@serve.zone/catalog 2.2.0 → 2.3.0
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_ts_web/00_commitinfo_data.js +1 -1
- package/dist_ts_web/elements/index.d.ts +3 -0
- package/dist_ts_web/elements/index.js +5 -1
- package/dist_ts_web/elements/sz-demo-view-routes.d.ts +22 -0
- package/dist_ts_web/elements/sz-demo-view-routes.js +388 -0
- package/dist_ts_web/elements/sz-route-card.d.ts +78 -0
- package/dist_ts_web/elements/sz-route-card.js +648 -0
- package/dist_ts_web/elements/sz-route-list-view.d.ts +21 -0
- package/dist_ts_web/elements/sz-route-list-view.js +372 -0
- package/dist_ts_web/pages/sz-demo-app-shell.js +8 -2
- package/dist_watch/bundle.js +1331 -140
- package/dist_watch/bundle.js.map +4 -4
- package/package.json +1 -1
- package/ts_web/00_commitinfo_data.ts +1 -1
- package/ts_web/elements/index.ts +5 -0
- package/ts_web/elements/sz-demo-view-routes.ts +362 -0
- package/ts_web/elements/sz-route-card.ts +667 -0
- package/ts_web/elements/sz-route-list-view.ts +326 -0
- package/ts_web/pages/sz-demo-app-shell.ts +7 -1
package/dist_watch/bundle.js
CHANGED
|
@@ -1397,7 +1397,7 @@ var init_Subscription = __esm({
|
|
|
1397
1397
|
this._finalizers = null;
|
|
1398
1398
|
}
|
|
1399
1399
|
Subscription2.prototype.unsubscribe = function() {
|
|
1400
|
-
var e_1,
|
|
1400
|
+
var e_1, _a44, e_2, _b;
|
|
1401
1401
|
var errors;
|
|
1402
1402
|
if (!this.closed) {
|
|
1403
1403
|
this.closed = true;
|
|
@@ -1414,7 +1414,7 @@ var init_Subscription = __esm({
|
|
|
1414
1414
|
e_1 = { error: e_1_1 };
|
|
1415
1415
|
} finally {
|
|
1416
1416
|
try {
|
|
1417
|
-
if (_parentage_1_1 && !_parentage_1_1.done && (
|
|
1417
|
+
if (_parentage_1_1 && !_parentage_1_1.done && (_a44 = _parentage_1.return)) _a44.call(_parentage_1);
|
|
1418
1418
|
} finally {
|
|
1419
1419
|
if (e_1) throw e_1.error;
|
|
1420
1420
|
}
|
|
@@ -1464,7 +1464,7 @@ var init_Subscription = __esm({
|
|
|
1464
1464
|
}
|
|
1465
1465
|
};
|
|
1466
1466
|
Subscription2.prototype.add = function(teardown) {
|
|
1467
|
-
var
|
|
1467
|
+
var _a44;
|
|
1468
1468
|
if (teardown && teardown !== this) {
|
|
1469
1469
|
if (this.closed) {
|
|
1470
1470
|
execFinalizer(teardown);
|
|
@@ -1475,7 +1475,7 @@ var init_Subscription = __esm({
|
|
|
1475
1475
|
}
|
|
1476
1476
|
teardown._addParent(this);
|
|
1477
1477
|
}
|
|
1478
|
-
(this._finalizers = (
|
|
1478
|
+
(this._finalizers = (_a44 = this._finalizers) !== null && _a44 !== void 0 ? _a44 : []).push(teardown);
|
|
1479
1479
|
}
|
|
1480
1480
|
}
|
|
1481
1481
|
};
|
|
@@ -1611,7 +1611,7 @@ function errorContext(cb) {
|
|
|
1611
1611
|
}
|
|
1612
1612
|
cb();
|
|
1613
1613
|
if (isRoot) {
|
|
1614
|
-
var
|
|
1614
|
+
var _a44 = context, errorThrown = _a44.errorThrown, error = _a44.error;
|
|
1615
1615
|
context = null;
|
|
1616
1616
|
if (errorThrown) {
|
|
1617
1617
|
throw error;
|
|
@@ -1862,8 +1862,8 @@ var init_pipe = __esm({
|
|
|
1862
1862
|
|
|
1863
1863
|
// node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/Observable.js
|
|
1864
1864
|
function getPromiseCtor(promiseCtor) {
|
|
1865
|
-
var
|
|
1866
|
-
return (
|
|
1865
|
+
var _a44;
|
|
1866
|
+
return (_a44 = promiseCtor !== null && promiseCtor !== void 0 ? promiseCtor : config.Promise) !== null && _a44 !== void 0 ? _a44 : Promise;
|
|
1867
1867
|
}
|
|
1868
1868
|
function isObserver(value2) {
|
|
1869
1869
|
return value2 && isFunction(value2.next) && isFunction(value2.error) && isFunction(value2.complete);
|
|
@@ -1897,7 +1897,7 @@ var init_Observable = __esm({
|
|
|
1897
1897
|
var _this = this;
|
|
1898
1898
|
var subscriber = isSubscriber(observerOrNext) ? observerOrNext : new SafeSubscriber(observerOrNext, error, complete);
|
|
1899
1899
|
errorContext(function() {
|
|
1900
|
-
var
|
|
1900
|
+
var _a44 = _this, operator = _a44.operator, source = _a44.source;
|
|
1901
1901
|
subscriber.add(operator ? operator.call(subscriber, source) : source ? _this._subscribe(subscriber) : _this._trySubscribe(subscriber));
|
|
1902
1902
|
});
|
|
1903
1903
|
return subscriber;
|
|
@@ -1929,8 +1929,8 @@ var init_Observable = __esm({
|
|
|
1929
1929
|
});
|
|
1930
1930
|
};
|
|
1931
1931
|
Observable2.prototype._subscribe = function(subscriber) {
|
|
1932
|
-
var
|
|
1933
|
-
return (
|
|
1932
|
+
var _a44;
|
|
1933
|
+
return (_a44 = this.source) === null || _a44 === void 0 ? void 0 : _a44.subscribe(subscriber);
|
|
1934
1934
|
};
|
|
1935
1935
|
Observable2.prototype[observable] = function() {
|
|
1936
1936
|
return this;
|
|
@@ -2031,11 +2031,11 @@ var init_OperatorSubscriber = __esm({
|
|
|
2031
2031
|
return _this;
|
|
2032
2032
|
}
|
|
2033
2033
|
OperatorSubscriber2.prototype.unsubscribe = function() {
|
|
2034
|
-
var
|
|
2034
|
+
var _a44;
|
|
2035
2035
|
if (!this.shouldUnsubscribe || this.shouldUnsubscribe()) {
|
|
2036
2036
|
var closed_1 = this.closed;
|
|
2037
2037
|
_super.prototype.unsubscribe.call(this);
|
|
2038
|
-
!closed_1 && ((
|
|
2038
|
+
!closed_1 && ((_a44 = this.onFinalize) === null || _a44 === void 0 ? void 0 : _a44.call(this));
|
|
2039
2039
|
}
|
|
2040
2040
|
};
|
|
2041
2041
|
return OperatorSubscriber2;
|
|
@@ -2291,7 +2291,7 @@ var init_Subject = __esm({
|
|
|
2291
2291
|
Subject2.prototype.next = function(value2) {
|
|
2292
2292
|
var _this = this;
|
|
2293
2293
|
errorContext(function() {
|
|
2294
|
-
var e_1,
|
|
2294
|
+
var e_1, _a44;
|
|
2295
2295
|
_this._throwIfClosed();
|
|
2296
2296
|
if (!_this.isStopped) {
|
|
2297
2297
|
if (!_this.currentObservers) {
|
|
@@ -2306,7 +2306,7 @@ var init_Subject = __esm({
|
|
|
2306
2306
|
e_1 = { error: e_1_1 };
|
|
2307
2307
|
} finally {
|
|
2308
2308
|
try {
|
|
2309
|
-
if (_c && !_c.done && (
|
|
2309
|
+
if (_c && !_c.done && (_a44 = _b.return)) _a44.call(_b);
|
|
2310
2310
|
} finally {
|
|
2311
2311
|
if (e_1) throw e_1.error;
|
|
2312
2312
|
}
|
|
@@ -2347,8 +2347,8 @@ var init_Subject = __esm({
|
|
|
2347
2347
|
};
|
|
2348
2348
|
Object.defineProperty(Subject2.prototype, "observed", {
|
|
2349
2349
|
get: function() {
|
|
2350
|
-
var
|
|
2351
|
-
return ((
|
|
2350
|
+
var _a44;
|
|
2351
|
+
return ((_a44 = this.observers) === null || _a44 === void 0 ? void 0 : _a44.length) > 0;
|
|
2352
2352
|
},
|
|
2353
2353
|
enumerable: false,
|
|
2354
2354
|
configurable: true
|
|
@@ -2364,7 +2364,7 @@ var init_Subject = __esm({
|
|
|
2364
2364
|
};
|
|
2365
2365
|
Subject2.prototype._innerSubscribe = function(subscriber) {
|
|
2366
2366
|
var _this = this;
|
|
2367
|
-
var
|
|
2367
|
+
var _a44 = this, hasError = _a44.hasError, isStopped = _a44.isStopped, observers = _a44.observers;
|
|
2368
2368
|
if (hasError || isStopped) {
|
|
2369
2369
|
return EMPTY_SUBSCRIPTION;
|
|
2370
2370
|
}
|
|
@@ -2376,7 +2376,7 @@ var init_Subject = __esm({
|
|
|
2376
2376
|
});
|
|
2377
2377
|
};
|
|
2378
2378
|
Subject2.prototype._checkFinalizedStatuses = function(subscriber) {
|
|
2379
|
-
var
|
|
2379
|
+
var _a44 = this, hasError = _a44.hasError, thrownError = _a44.thrownError, isStopped = _a44.isStopped;
|
|
2380
2380
|
if (hasError) {
|
|
2381
2381
|
subscriber.error(thrownError);
|
|
2382
2382
|
} else if (isStopped) {
|
|
@@ -2402,20 +2402,20 @@ var init_Subject = __esm({
|
|
|
2402
2402
|
return _this;
|
|
2403
2403
|
}
|
|
2404
2404
|
AnonymousSubject2.prototype.next = function(value2) {
|
|
2405
|
-
var
|
|
2406
|
-
(_b = (
|
|
2405
|
+
var _a44, _b;
|
|
2406
|
+
(_b = (_a44 = this.destination) === null || _a44 === void 0 ? void 0 : _a44.next) === null || _b === void 0 ? void 0 : _b.call(_a44, value2);
|
|
2407
2407
|
};
|
|
2408
2408
|
AnonymousSubject2.prototype.error = function(err) {
|
|
2409
|
-
var
|
|
2410
|
-
(_b = (
|
|
2409
|
+
var _a44, _b;
|
|
2410
|
+
(_b = (_a44 = this.destination) === null || _a44 === void 0 ? void 0 : _a44.error) === null || _b === void 0 ? void 0 : _b.call(_a44, err);
|
|
2411
2411
|
};
|
|
2412
2412
|
AnonymousSubject2.prototype.complete = function() {
|
|
2413
|
-
var
|
|
2414
|
-
(_b = (
|
|
2413
|
+
var _a44, _b;
|
|
2414
|
+
(_b = (_a44 = this.destination) === null || _a44 === void 0 ? void 0 : _a44.complete) === null || _b === void 0 ? void 0 : _b.call(_a44);
|
|
2415
2415
|
};
|
|
2416
2416
|
AnonymousSubject2.prototype._subscribe = function(subscriber) {
|
|
2417
|
-
var
|
|
2418
|
-
return (_b = (
|
|
2417
|
+
var _a44, _b;
|
|
2418
|
+
return (_b = (_a44 = this.source) === null || _a44 === void 0 ? void 0 : _a44.subscribe(subscriber)) !== null && _b !== void 0 ? _b : EMPTY_SUBSCRIPTION;
|
|
2419
2419
|
};
|
|
2420
2420
|
return AnonymousSubject2;
|
|
2421
2421
|
})(Subject);
|
|
@@ -2448,7 +2448,7 @@ var init_BehaviorSubject = __esm({
|
|
|
2448
2448
|
return subscription;
|
|
2449
2449
|
};
|
|
2450
2450
|
BehaviorSubject2.prototype.getValue = function() {
|
|
2451
|
-
var
|
|
2451
|
+
var _a44 = this, hasError = _a44.hasError, thrownError = _a44.thrownError, _value2 = _a44._value;
|
|
2452
2452
|
if (hasError) {
|
|
2453
2453
|
throw thrownError;
|
|
2454
2454
|
}
|
|
@@ -2507,7 +2507,7 @@ var init_ReplaySubject = __esm({
|
|
|
2507
2507
|
return _this;
|
|
2508
2508
|
}
|
|
2509
2509
|
ReplaySubject2.prototype.next = function(value2) {
|
|
2510
|
-
var
|
|
2510
|
+
var _a44 = this, isStopped = _a44.isStopped, _buffer = _a44._buffer, _infiniteTimeWindow = _a44._infiniteTimeWindow, _timestampProvider = _a44._timestampProvider, _windowTime = _a44._windowTime;
|
|
2511
2511
|
if (!isStopped) {
|
|
2512
2512
|
_buffer.push(value2);
|
|
2513
2513
|
!_infiniteTimeWindow && _buffer.push(_timestampProvider.now() + _windowTime);
|
|
@@ -2519,7 +2519,7 @@ var init_ReplaySubject = __esm({
|
|
|
2519
2519
|
this._throwIfClosed();
|
|
2520
2520
|
this._trimBuffer();
|
|
2521
2521
|
var subscription = this._innerSubscribe(subscriber);
|
|
2522
|
-
var
|
|
2522
|
+
var _a44 = this, _infiniteTimeWindow = _a44._infiniteTimeWindow, _buffer = _a44._buffer;
|
|
2523
2523
|
var copy = _buffer.slice();
|
|
2524
2524
|
for (var i11 = 0; i11 < copy.length && !subscriber.closed; i11 += _infiniteTimeWindow ? 1 : 2) {
|
|
2525
2525
|
subscriber.next(copy[i11]);
|
|
@@ -2528,7 +2528,7 @@ var init_ReplaySubject = __esm({
|
|
|
2528
2528
|
return subscription;
|
|
2529
2529
|
};
|
|
2530
2530
|
ReplaySubject2.prototype._trimBuffer = function() {
|
|
2531
|
-
var
|
|
2531
|
+
var _a44 = this, _bufferSize = _a44._bufferSize, _timestampProvider = _a44._timestampProvider, _buffer = _a44._buffer, _infiniteTimeWindow = _a44._infiniteTimeWindow;
|
|
2532
2532
|
var adjustedBufferSize = (_infiniteTimeWindow ? 1 : 2) * _bufferSize;
|
|
2533
2533
|
_bufferSize < Infinity && adjustedBufferSize < _buffer.length && _buffer.splice(0, _buffer.length - adjustedBufferSize);
|
|
2534
2534
|
if (!_infiniteTimeWindow) {
|
|
@@ -2561,7 +2561,7 @@ var init_AsyncSubject = __esm({
|
|
|
2561
2561
|
return _this;
|
|
2562
2562
|
}
|
|
2563
2563
|
AsyncSubject2.prototype._checkFinalizedStatuses = function(subscriber) {
|
|
2564
|
-
var
|
|
2564
|
+
var _a44 = this, hasError = _a44.hasError, _hasValue = _a44._hasValue, _value2 = _a44._value, thrownError = _a44.thrownError, isStopped = _a44.isStopped, _isComplete = _a44._isComplete;
|
|
2565
2565
|
if (hasError) {
|
|
2566
2566
|
subscriber.error(thrownError);
|
|
2567
2567
|
} else if (isStopped || _isComplete) {
|
|
@@ -2576,7 +2576,7 @@ var init_AsyncSubject = __esm({
|
|
|
2576
2576
|
}
|
|
2577
2577
|
};
|
|
2578
2578
|
AsyncSubject2.prototype.complete = function() {
|
|
2579
|
-
var
|
|
2579
|
+
var _a44 = this, _hasValue = _a44._hasValue, _value2 = _a44._value, _isComplete = _a44._isComplete;
|
|
2580
2580
|
if (!_isComplete) {
|
|
2581
2581
|
this._isComplete = true;
|
|
2582
2582
|
_hasValue && _super.prototype.next.call(this, _value2);
|
|
@@ -2654,7 +2654,7 @@ var init_AsyncAction = __esm({
|
|
|
2654
2654
|
return _this;
|
|
2655
2655
|
}
|
|
2656
2656
|
AsyncAction2.prototype.schedule = function(state, delay2) {
|
|
2657
|
-
var
|
|
2657
|
+
var _a44;
|
|
2658
2658
|
if (delay2 === void 0) {
|
|
2659
2659
|
delay2 = 0;
|
|
2660
2660
|
}
|
|
@@ -2669,7 +2669,7 @@ var init_AsyncAction = __esm({
|
|
|
2669
2669
|
}
|
|
2670
2670
|
this.pending = true;
|
|
2671
2671
|
this.delay = delay2;
|
|
2672
|
-
this.id = (
|
|
2672
|
+
this.id = (_a44 = this.id) !== null && _a44 !== void 0 ? _a44 : this.requestAsyncId(scheduler, this.id, delay2);
|
|
2673
2673
|
return this;
|
|
2674
2674
|
};
|
|
2675
2675
|
AsyncAction2.prototype.requestAsyncId = function(scheduler, _id, delay2) {
|
|
@@ -2718,7 +2718,7 @@ var init_AsyncAction = __esm({
|
|
|
2718
2718
|
};
|
|
2719
2719
|
AsyncAction2.prototype.unsubscribe = function() {
|
|
2720
2720
|
if (!this.closed) {
|
|
2721
|
-
var
|
|
2721
|
+
var _a44 = this, id = _a44.id, scheduler = _a44.scheduler;
|
|
2722
2722
|
var actions = scheduler.actions;
|
|
2723
2723
|
this.work = this.state = this.scheduler = null;
|
|
2724
2724
|
this.pending = false;
|
|
@@ -2823,7 +2823,7 @@ var init_AsapAction = __esm({
|
|
|
2823
2823
|
return scheduler._scheduled || (scheduler._scheduled = immediateProvider.setImmediate(scheduler.flush.bind(scheduler, void 0)));
|
|
2824
2824
|
};
|
|
2825
2825
|
AsapAction2.prototype.recycleAsyncId = function(scheduler, id, delay2) {
|
|
2826
|
-
var
|
|
2826
|
+
var _a44;
|
|
2827
2827
|
if (delay2 === void 0) {
|
|
2828
2828
|
delay2 = 0;
|
|
2829
2829
|
}
|
|
@@ -2831,7 +2831,7 @@ var init_AsapAction = __esm({
|
|
|
2831
2831
|
return _super.prototype.recycleAsyncId.call(this, scheduler, id, delay2);
|
|
2832
2832
|
}
|
|
2833
2833
|
var actions = scheduler.actions;
|
|
2834
|
-
if (id != null && ((
|
|
2834
|
+
if (id != null && ((_a44 = actions[actions.length - 1]) === null || _a44 === void 0 ? void 0 : _a44.id) !== id) {
|
|
2835
2835
|
immediateProvider.clearImmediate(id);
|
|
2836
2836
|
if (scheduler._scheduled === id) {
|
|
2837
2837
|
scheduler._scheduled = void 0;
|
|
@@ -3069,7 +3069,7 @@ var init_AnimationFrameAction = __esm({
|
|
|
3069
3069
|
}));
|
|
3070
3070
|
};
|
|
3071
3071
|
AnimationFrameAction2.prototype.recycleAsyncId = function(scheduler, id, delay2) {
|
|
3072
|
-
var
|
|
3072
|
+
var _a44;
|
|
3073
3073
|
if (delay2 === void 0) {
|
|
3074
3074
|
delay2 = 0;
|
|
3075
3075
|
}
|
|
@@ -3077,7 +3077,7 @@ var init_AnimationFrameAction = __esm({
|
|
|
3077
3077
|
return _super.prototype.recycleAsyncId.call(this, scheduler, id, delay2);
|
|
3078
3078
|
}
|
|
3079
3079
|
var actions = scheduler.actions;
|
|
3080
|
-
if (id != null && id === scheduler._scheduled && ((
|
|
3080
|
+
if (id != null && id === scheduler._scheduled && ((_a44 = actions[actions.length - 1]) === null || _a44 === void 0 ? void 0 : _a44.id) !== id) {
|
|
3081
3081
|
animationFrameProvider.cancelAnimationFrame(id);
|
|
3082
3082
|
scheduler._scheduled = void 0;
|
|
3083
3083
|
}
|
|
@@ -3166,7 +3166,7 @@ var init_VirtualTimeScheduler = __esm({
|
|
|
3166
3166
|
return _this;
|
|
3167
3167
|
}
|
|
3168
3168
|
VirtualTimeScheduler2.prototype.flush = function() {
|
|
3169
|
-
var
|
|
3169
|
+
var _a44 = this, actions = _a44.actions, maxFrames = _a44.maxFrames;
|
|
3170
3170
|
var error;
|
|
3171
3171
|
var action;
|
|
3172
3172
|
while ((action = actions[0]) && action.delay <= maxFrames) {
|
|
@@ -3386,7 +3386,7 @@ var init_isIterable = __esm({
|
|
|
3386
3386
|
// node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/util/isReadableStreamLike.js
|
|
3387
3387
|
function readableStreamLikeToAsyncGenerator(readableStream) {
|
|
3388
3388
|
return __asyncGenerator(this, arguments, function readableStreamLikeToAsyncGenerator_1() {
|
|
3389
|
-
var reader,
|
|
3389
|
+
var reader, _a44, value2, done;
|
|
3390
3390
|
return __generator(this, function(_b) {
|
|
3391
3391
|
switch (_b.label) {
|
|
3392
3392
|
case 0:
|
|
@@ -3399,7 +3399,7 @@ function readableStreamLikeToAsyncGenerator(readableStream) {
|
|
|
3399
3399
|
if (false) return [3, 8];
|
|
3400
3400
|
return [4, __await(reader.read())];
|
|
3401
3401
|
case 3:
|
|
3402
|
-
|
|
3402
|
+
_a44 = _b.sent(), value2 = _a44.value, done = _a44.done;
|
|
3403
3403
|
if (!done) return [3, 5];
|
|
3404
3404
|
return [4, __await(void 0)];
|
|
3405
3405
|
case 4:
|
|
@@ -3490,7 +3490,7 @@ function fromPromise(promise) {
|
|
|
3490
3490
|
}
|
|
3491
3491
|
function fromIterable(iterable) {
|
|
3492
3492
|
return new Observable(function(subscriber) {
|
|
3493
|
-
var e_1,
|
|
3493
|
+
var e_1, _a44;
|
|
3494
3494
|
try {
|
|
3495
3495
|
for (var iterable_1 = __values(iterable), iterable_1_1 = iterable_1.next(); !iterable_1_1.done; iterable_1_1 = iterable_1.next()) {
|
|
3496
3496
|
var value2 = iterable_1_1.value;
|
|
@@ -3503,7 +3503,7 @@ function fromIterable(iterable) {
|
|
|
3503
3503
|
e_1 = { error: e_1_1 };
|
|
3504
3504
|
} finally {
|
|
3505
3505
|
try {
|
|
3506
|
-
if (iterable_1_1 && !iterable_1_1.done && (
|
|
3506
|
+
if (iterable_1_1 && !iterable_1_1.done && (_a44 = iterable_1.return)) _a44.call(iterable_1);
|
|
3507
3507
|
} finally {
|
|
3508
3508
|
if (e_1) throw e_1.error;
|
|
3509
3509
|
}
|
|
@@ -3523,7 +3523,7 @@ function fromReadableStreamLike(readableStream) {
|
|
|
3523
3523
|
}
|
|
3524
3524
|
function process2(asyncIterable, subscriber) {
|
|
3525
3525
|
var asyncIterable_1, asyncIterable_1_1;
|
|
3526
|
-
var e_2,
|
|
3526
|
+
var e_2, _a44;
|
|
3527
3527
|
return __awaiter(this, void 0, void 0, function() {
|
|
3528
3528
|
var value2, e_2_1;
|
|
3529
3529
|
return __generator(this, function(_b) {
|
|
@@ -3552,8 +3552,8 @@ function process2(asyncIterable, subscriber) {
|
|
|
3552
3552
|
return [3, 11];
|
|
3553
3553
|
case 6:
|
|
3554
3554
|
_b.trys.push([6, , 9, 10]);
|
|
3555
|
-
if (!(asyncIterable_1_1 && !asyncIterable_1_1.done && (
|
|
3556
|
-
return [4,
|
|
3555
|
+
if (!(asyncIterable_1_1 && !asyncIterable_1_1.done && (_a44 = asyncIterable_1.return))) return [3, 8];
|
|
3556
|
+
return [4, _a44.call(asyncIterable_1)];
|
|
3557
3557
|
case 7:
|
|
3558
3558
|
_b.sent();
|
|
3559
3559
|
_b.label = 8;
|
|
@@ -3713,11 +3713,11 @@ function scheduleIterable(input, scheduler) {
|
|
|
3713
3713
|
executeSchedule(subscriber, scheduler, function() {
|
|
3714
3714
|
iterator2 = input[iterator]();
|
|
3715
3715
|
executeSchedule(subscriber, scheduler, function() {
|
|
3716
|
-
var
|
|
3716
|
+
var _a44;
|
|
3717
3717
|
var value2;
|
|
3718
3718
|
var done;
|
|
3719
3719
|
try {
|
|
3720
|
-
|
|
3720
|
+
_a44 = iterator2.next(), value2 = _a44.value, done = _a44.done;
|
|
3721
3721
|
} catch (err) {
|
|
3722
3722
|
subscriber.error(err);
|
|
3723
3723
|
return;
|
|
@@ -3871,12 +3871,12 @@ var init_throwError = __esm({
|
|
|
3871
3871
|
|
|
3872
3872
|
// node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/Notification.js
|
|
3873
3873
|
function observeNotification(notification, observer) {
|
|
3874
|
-
var
|
|
3874
|
+
var _a44, _b, _c;
|
|
3875
3875
|
var _d = notification, kind = _d.kind, value2 = _d.value, error = _d.error;
|
|
3876
3876
|
if (typeof kind !== "string") {
|
|
3877
3877
|
throw new TypeError('Invalid notification, missing "kind"');
|
|
3878
3878
|
}
|
|
3879
|
-
kind === "N" ? (
|
|
3879
|
+
kind === "N" ? (_a44 = observer.next) === null || _a44 === void 0 ? void 0 : _a44.call(observer, value2) : kind === "E" ? (_b = observer.error) === null || _b === void 0 ? void 0 : _b.call(observer, error) : (_c = observer.complete) === null || _c === void 0 ? void 0 : _c.call(observer);
|
|
3880
3880
|
}
|
|
3881
3881
|
var NotificationKind, Notification;
|
|
3882
3882
|
var init_Notification = __esm({
|
|
@@ -3901,15 +3901,15 @@ var init_Notification = __esm({
|
|
|
3901
3901
|
return observeNotification(this, observer);
|
|
3902
3902
|
};
|
|
3903
3903
|
Notification2.prototype.do = function(nextHandler, errorHandler, completeHandler) {
|
|
3904
|
-
var
|
|
3904
|
+
var _a44 = this, kind = _a44.kind, value2 = _a44.value, error = _a44.error;
|
|
3905
3905
|
return kind === "N" ? nextHandler === null || nextHandler === void 0 ? void 0 : nextHandler(value2) : kind === "E" ? errorHandler === null || errorHandler === void 0 ? void 0 : errorHandler(error) : completeHandler === null || completeHandler === void 0 ? void 0 : completeHandler();
|
|
3906
3906
|
};
|
|
3907
3907
|
Notification2.prototype.accept = function(nextOrObserver, error, complete) {
|
|
3908
|
-
var
|
|
3909
|
-
return isFunction((
|
|
3908
|
+
var _a44;
|
|
3909
|
+
return isFunction((_a44 = nextOrObserver) === null || _a44 === void 0 ? void 0 : _a44.next) ? this.observe(nextOrObserver) : this.do(nextOrObserver, error, complete);
|
|
3910
3910
|
};
|
|
3911
3911
|
Notification2.prototype.toObservable = function() {
|
|
3912
|
-
var
|
|
3912
|
+
var _a44 = this, kind = _a44.kind, value2 = _a44.value, error = _a44.error;
|
|
3913
3913
|
var result = kind === "N" ? of(value2) : kind === "E" ? throwError(function() {
|
|
3914
3914
|
return error;
|
|
3915
3915
|
}) : kind === "C" ? EMPTY : 0;
|
|
@@ -4022,7 +4022,7 @@ var init_isDate = __esm({
|
|
|
4022
4022
|
|
|
4023
4023
|
// node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/operators/timeout.js
|
|
4024
4024
|
function timeout(config3, schedulerArg) {
|
|
4025
|
-
var
|
|
4025
|
+
var _a44 = isValidDate(config3) ? { first: config3 } : typeof config3 === "number" ? { each: config3 } : config3, first2 = _a44.first, each = _a44.each, _b = _a44.with, _with = _b === void 0 ? timeoutErrorFactory : _b, _c = _a44.scheduler, scheduler = _c === void 0 ? schedulerArg !== null && schedulerArg !== void 0 ? schedulerArg : asyncScheduler : _c, _d = _a44.meta, meta = _d === void 0 ? null : _d;
|
|
4026
4026
|
if (first2 == null && each == null) {
|
|
4027
4027
|
throw new TypeError("No timeout provided.");
|
|
4028
4028
|
}
|
|
@@ -4300,11 +4300,11 @@ function fromEvent(target, eventName, options, resultSelector) {
|
|
|
4300
4300
|
if (resultSelector) {
|
|
4301
4301
|
return fromEvent(target, eventName, options).pipe(mapOneOrManyArgs(resultSelector));
|
|
4302
4302
|
}
|
|
4303
|
-
var
|
|
4303
|
+
var _a44 = __read(isEventTarget(target) ? eventTargetMethods.map(function(methodName) {
|
|
4304
4304
|
return function(handler2) {
|
|
4305
4305
|
return target[methodName](eventName, handler2, options);
|
|
4306
4306
|
};
|
|
4307
|
-
}) : isNodeStyleEventEmitter(target) ? nodeEventEmitterMethods.map(toCommonHandlerRegistry(target, eventName)) : isJQueryStyleEventEmitter(target) ? jqueryMethods.map(toCommonHandlerRegistry(target, eventName)) : [], 2), add3 =
|
|
4307
|
+
}) : isNodeStyleEventEmitter(target) ? nodeEventEmitterMethods.map(toCommonHandlerRegistry(target, eventName)) : isJQueryStyleEventEmitter(target) ? jqueryMethods.map(toCommonHandlerRegistry(target, eventName)) : [], 2), add3 = _a44[0], remove2 = _a44[1];
|
|
4308
4308
|
if (!add3) {
|
|
4309
4309
|
if (isArrayLike(target)) {
|
|
4310
4310
|
return mergeMap(function(subTarget) {
|
|
@@ -4562,7 +4562,7 @@ function bufferCount(bufferSize, startBufferEvery) {
|
|
|
4562
4562
|
var buffers = [];
|
|
4563
4563
|
var count2 = 0;
|
|
4564
4564
|
source.subscribe(createOperatorSubscriber(subscriber, function(value2) {
|
|
4565
|
-
var e_1,
|
|
4565
|
+
var e_1, _a44, e_2, _b;
|
|
4566
4566
|
var toEmit = null;
|
|
4567
4567
|
if (count2++ % startBufferEvery === 0) {
|
|
4568
4568
|
buffers.push([]);
|
|
@@ -4580,7 +4580,7 @@ function bufferCount(bufferSize, startBufferEvery) {
|
|
|
4580
4580
|
e_1 = { error: e_1_1 };
|
|
4581
4581
|
} finally {
|
|
4582
4582
|
try {
|
|
4583
|
-
if (buffers_1_1 && !buffers_1_1.done && (
|
|
4583
|
+
if (buffers_1_1 && !buffers_1_1.done && (_a44 = buffers_1.return)) _a44.call(buffers_1);
|
|
4584
4584
|
} finally {
|
|
4585
4585
|
if (e_1) throw e_1.error;
|
|
4586
4586
|
}
|
|
@@ -4603,7 +4603,7 @@ function bufferCount(bufferSize, startBufferEvery) {
|
|
|
4603
4603
|
}
|
|
4604
4604
|
}
|
|
4605
4605
|
}, function() {
|
|
4606
|
-
var e_3,
|
|
4606
|
+
var e_3, _a44;
|
|
4607
4607
|
try {
|
|
4608
4608
|
for (var buffers_2 = __values(buffers), buffers_2_1 = buffers_2.next(); !buffers_2_1.done; buffers_2_1 = buffers_2.next()) {
|
|
4609
4609
|
var buffer2 = buffers_2_1.value;
|
|
@@ -4613,7 +4613,7 @@ function bufferCount(bufferSize, startBufferEvery) {
|
|
|
4613
4613
|
e_3 = { error: e_3_1 };
|
|
4614
4614
|
} finally {
|
|
4615
4615
|
try {
|
|
4616
|
-
if (buffers_2_1 && !buffers_2_1.done && (
|
|
4616
|
+
if (buffers_2_1 && !buffers_2_1.done && (_a44 = buffers_2.return)) _a44.call(buffers_2);
|
|
4617
4617
|
} finally {
|
|
4618
4618
|
if (e_3) throw e_3.error;
|
|
4619
4619
|
}
|
|
@@ -4635,12 +4635,12 @@ var init_bufferCount = __esm({
|
|
|
4635
4635
|
|
|
4636
4636
|
// node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/operators/bufferTime.js
|
|
4637
4637
|
function bufferTime(bufferTimeSpan) {
|
|
4638
|
-
var
|
|
4638
|
+
var _a44, _b;
|
|
4639
4639
|
var otherArgs = [];
|
|
4640
4640
|
for (var _i = 1; _i < arguments.length; _i++) {
|
|
4641
4641
|
otherArgs[_i - 1] = arguments[_i];
|
|
4642
4642
|
}
|
|
4643
|
-
var scheduler = (
|
|
4643
|
+
var scheduler = (_a44 = popScheduler(otherArgs)) !== null && _a44 !== void 0 ? _a44 : asyncScheduler;
|
|
4644
4644
|
var bufferCreationInterval = (_b = otherArgs[0]) !== null && _b !== void 0 ? _b : null;
|
|
4645
4645
|
var maxBufferSize = otherArgs[1] || Infinity;
|
|
4646
4646
|
return operate(function(source, subscriber) {
|
|
@@ -4675,7 +4675,7 @@ function bufferTime(bufferTimeSpan) {
|
|
|
4675
4675
|
}
|
|
4676
4676
|
startBuffer();
|
|
4677
4677
|
var bufferTimeSubscriber = createOperatorSubscriber(subscriber, function(value2) {
|
|
4678
|
-
var e_1,
|
|
4678
|
+
var e_1, _a45;
|
|
4679
4679
|
var recordsCopy = bufferRecords.slice();
|
|
4680
4680
|
try {
|
|
4681
4681
|
for (var recordsCopy_1 = __values(recordsCopy), recordsCopy_1_1 = recordsCopy_1.next(); !recordsCopy_1_1.done; recordsCopy_1_1 = recordsCopy_1.next()) {
|
|
@@ -4688,7 +4688,7 @@ function bufferTime(bufferTimeSpan) {
|
|
|
4688
4688
|
e_1 = { error: e_1_1 };
|
|
4689
4689
|
} finally {
|
|
4690
4690
|
try {
|
|
4691
|
-
if (recordsCopy_1_1 && !recordsCopy_1_1.done && (
|
|
4691
|
+
if (recordsCopy_1_1 && !recordsCopy_1_1.done && (_a45 = recordsCopy_1.return)) _a45.call(recordsCopy_1);
|
|
4692
4692
|
} finally {
|
|
4693
4693
|
if (e_1) throw e_1.error;
|
|
4694
4694
|
}
|
|
@@ -5323,7 +5323,7 @@ var init_tap = __esm({
|
|
|
5323
5323
|
// node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/esm5/internal/operators/throttle.js
|
|
5324
5324
|
function throttle(durationSelector, config3) {
|
|
5325
5325
|
return operate(function(source, subscriber) {
|
|
5326
|
-
var
|
|
5326
|
+
var _a44 = config3 !== null && config3 !== void 0 ? config3 : {}, _b = _a44.leading, leading = _b === void 0 ? true : _b, _c = _a44.trailing, trailing = _c === void 0 ? false : _c;
|
|
5327
5327
|
var hasValue = false;
|
|
5328
5328
|
var sendValue = null;
|
|
5329
5329
|
var throttled = null;
|
|
@@ -50059,7 +50059,7 @@ var require_sweet_scroll = __commonJS({
|
|
|
50059
50059
|
hash: null
|
|
50060
50060
|
};
|
|
50061
50061
|
this.loop = function(time) {
|
|
50062
|
-
var
|
|
50062
|
+
var _a44 = _this, $el = _a44.$el, ctx = _a44.ctx;
|
|
50063
50063
|
if (!ctx.start) {
|
|
50064
50064
|
ctx.start = time;
|
|
50065
50065
|
}
|
|
@@ -50154,7 +50154,7 @@ var require_sweet_scroll = __commonJS({
|
|
|
50154
50154
|
if (!canUseDOM) {
|
|
50155
50155
|
return;
|
|
50156
50156
|
}
|
|
50157
|
-
var
|
|
50157
|
+
var _a44 = this, $el = _a44.$el, ctx = _a44.ctx, currentOptions = _a44.opts;
|
|
50158
50158
|
var $trigger = ctx.$trigger;
|
|
50159
50159
|
var opts = __assign2({}, currentOptions, options || {});
|
|
50160
50160
|
var optOffset = opts.offset, vertical = opts.vertical, horizontal = opts.horizontal;
|
|
@@ -50221,7 +50221,7 @@ var require_sweet_scroll = __commonJS({
|
|
|
50221
50221
|
if (gotoEnd === void 0) {
|
|
50222
50222
|
gotoEnd = false;
|
|
50223
50223
|
}
|
|
50224
|
-
var
|
|
50224
|
+
var _a44 = this, $el = _a44.$el, ctx = _a44.ctx;
|
|
50225
50225
|
var pos = ctx.pos;
|
|
50226
50226
|
if (!$el || !ctx.progress) {
|
|
50227
50227
|
return;
|
|
@@ -50277,7 +50277,7 @@ var require_sweet_scroll = __commonJS({
|
|
|
50277
50277
|
ctx.id = SweetScroll4.raf(this.loop);
|
|
50278
50278
|
};
|
|
50279
50279
|
SweetScroll4.prototype.complete = function() {
|
|
50280
|
-
var
|
|
50280
|
+
var _a44 = this, $el = _a44.$el, ctx = _a44.ctx;
|
|
50281
50281
|
var hash = ctx.hash, cancel = ctx.cancel, opts = ctx.opts, pos = ctx.pos, $trigger = ctx.$trigger;
|
|
50282
50282
|
if (!$el || !opts) {
|
|
50283
50283
|
return;
|
|
@@ -50303,18 +50303,18 @@ var require_sweet_scroll = __commonJS({
|
|
|
50303
50303
|
for (var _i = 2; _i < arguments.length; _i++) {
|
|
50304
50304
|
args[_i - 2] = arguments[_i];
|
|
50305
50305
|
}
|
|
50306
|
-
var
|
|
50306
|
+
var _a44;
|
|
50307
50307
|
var callback = options[type5];
|
|
50308
50308
|
var callbackResult;
|
|
50309
50309
|
var methodResult;
|
|
50310
50310
|
if (isFunction2(callback)) {
|
|
50311
50311
|
callbackResult = callback.apply(this, args.concat([this]));
|
|
50312
50312
|
}
|
|
50313
|
-
methodResult = (
|
|
50313
|
+
methodResult = (_a44 = this)["on" + (type5[0].toUpperCase() + type5.slice(1))].apply(_a44, args);
|
|
50314
50314
|
return callbackResult !== void 0 ? callbackResult : methodResult;
|
|
50315
50315
|
};
|
|
50316
50316
|
SweetScroll4.prototype.bind = function(click, stop) {
|
|
50317
|
-
var
|
|
50317
|
+
var _a44 = this, $el = _a44.$el, opts = _a44.ctx.opts;
|
|
50318
50318
|
if ($el) {
|
|
50319
50319
|
if (click) {
|
|
50320
50320
|
addEvent($el, CONTAINER_CLICK_EVENT, this.handleClick, false);
|
|
@@ -50325,7 +50325,7 @@ var require_sweet_scroll = __commonJS({
|
|
|
50325
50325
|
}
|
|
50326
50326
|
};
|
|
50327
50327
|
SweetScroll4.prototype.unbind = function(click, stop) {
|
|
50328
|
-
var
|
|
50328
|
+
var _a44 = this, $el = _a44.$el, opts = _a44.ctx.opts;
|
|
50329
50329
|
if ($el) {
|
|
50330
50330
|
if (click) {
|
|
50331
50331
|
removeEvent($el, CONTAINER_CLICK_EVENT, this.handleClick, false);
|
|
@@ -96702,6 +96702,7 @@ __export(elements_exports, {
|
|
|
96702
96702
|
SzDemoViewMta: () => SzDemoViewMta,
|
|
96703
96703
|
SzDemoViewNetwork: () => SzDemoViewNetwork,
|
|
96704
96704
|
SzDemoViewRegistries: () => SzDemoViewRegistries,
|
|
96705
|
+
SzDemoViewRoutes: () => SzDemoViewRoutes,
|
|
96705
96706
|
SzDemoViewServices: () => SzDemoViewServices,
|
|
96706
96707
|
SzDemoViewSettings: () => SzDemoViewSettings,
|
|
96707
96708
|
SzDemoViewTokens: () => SzDemoViewTokens,
|
|
@@ -96720,6 +96721,8 @@ __export(elements_exports, {
|
|
|
96720
96721
|
SzRegistryExternalView: () => SzRegistryExternalView,
|
|
96721
96722
|
SzResourceUsageCard: () => SzResourceUsageCard,
|
|
96722
96723
|
SzReverseProxyCard: () => SzReverseProxyCard,
|
|
96724
|
+
SzRouteCard: () => SzRouteCard,
|
|
96725
|
+
SzRouteListView: () => SzRouteListView,
|
|
96723
96726
|
SzServiceCreateView: () => SzServiceCreateView,
|
|
96724
96727
|
SzServiceDetailView: () => SzServiceDetailView,
|
|
96725
96728
|
SzServicesBackupsView: () => SzServicesBackupsView,
|
|
@@ -105634,11 +105637,852 @@ __publicField(SzMtaDetailView, "styles", [
|
|
|
105634
105637
|
]);
|
|
105635
105638
|
__runInitializers(_init29, 1, SzMtaDetailView);
|
|
105636
105639
|
|
|
105640
|
+
// ts_web/elements/sz-route-card.ts
|
|
105641
|
+
init_dist_ts29();
|
|
105642
|
+
var _route_dec, _a30, _SzRouteCard_decorators, _init30, _route;
|
|
105643
|
+
function formatPorts(ports) {
|
|
105644
|
+
if (typeof ports === "number") return String(ports);
|
|
105645
|
+
if (Array.isArray(ports)) {
|
|
105646
|
+
return ports.map((p7) => {
|
|
105647
|
+
if (typeof p7 === "number") return String(p7);
|
|
105648
|
+
return `${p7.from}\u2013${p7.to}`;
|
|
105649
|
+
}).join(", ");
|
|
105650
|
+
}
|
|
105651
|
+
return String(ports);
|
|
105652
|
+
}
|
|
105653
|
+
function formatTargets(targets) {
|
|
105654
|
+
const result = [];
|
|
105655
|
+
for (const t9 of targets) {
|
|
105656
|
+
const hosts = Array.isArray(t9.host) ? t9.host : [t9.host];
|
|
105657
|
+
const portStr = t9.port === "preserve" ? "(preserve)" : String(t9.port);
|
|
105658
|
+
for (const h9 of hosts) {
|
|
105659
|
+
result.push(`${h9}:${portStr}`);
|
|
105660
|
+
}
|
|
105661
|
+
}
|
|
105662
|
+
return result;
|
|
105663
|
+
}
|
|
105664
|
+
_SzRouteCard_decorators = [t4("sz-route-card")];
|
|
105665
|
+
var SzRouteCard = class extends (_a30 = DeesElement, _route_dec = [n5({ type: Object })], _a30) {
|
|
105666
|
+
constructor() {
|
|
105667
|
+
super(...arguments);
|
|
105668
|
+
__privateAdd(this, _route, __runInitializers(_init30, 8, this, null)), __runInitializers(_init30, 11, this);
|
|
105669
|
+
}
|
|
105670
|
+
render() {
|
|
105671
|
+
if (!this.route) {
|
|
105672
|
+
return b2`<div class="card"><div class="no-route">No route data</div></div>`;
|
|
105673
|
+
}
|
|
105674
|
+
const r11 = this.route;
|
|
105675
|
+
const isEnabled = r11.enabled !== false;
|
|
105676
|
+
const match2 = r11.match;
|
|
105677
|
+
const action = r11.action;
|
|
105678
|
+
const security = r11.security;
|
|
105679
|
+
return b2`
|
|
105680
|
+
<div class="card">
|
|
105681
|
+
<!-- Header -->
|
|
105682
|
+
<div class="header">
|
|
105683
|
+
<div class="header-left">
|
|
105684
|
+
<span class="status-dot ${isEnabled ? "enabled" : "disabled"}"></span>
|
|
105685
|
+
<span class="route-name">${r11.name || r11.id || "Unnamed Route"}</span>
|
|
105686
|
+
</div>
|
|
105687
|
+
<div class="header-badges">
|
|
105688
|
+
<span class="badge ${action.type}">${action.type}</span>
|
|
105689
|
+
<span class="badge ${isEnabled ? "enabled" : "disabled"}">${isEnabled ? "enabled" : "disabled"}</span>
|
|
105690
|
+
</div>
|
|
105691
|
+
</div>
|
|
105692
|
+
|
|
105693
|
+
${r11.description ? b2`<div class="description">${r11.description}</div>` : ""}
|
|
105694
|
+
|
|
105695
|
+
<div class="meta-row">
|
|
105696
|
+
${r11.tags && r11.tags.length > 0 ? b2`<div class="tags">${r11.tags.map((t9) => b2`<span class="tag">${t9}</span>`)}</div>` : b2`<div></div>`}
|
|
105697
|
+
${r11.priority != null ? b2`<span class="priority">Priority: ${r11.priority}</span>` : ""}
|
|
105698
|
+
</div>
|
|
105699
|
+
|
|
105700
|
+
<!-- Match Section -->
|
|
105701
|
+
<div class="section match">
|
|
105702
|
+
<div class="section-label">Match</div>
|
|
105703
|
+
<div class="field-row">
|
|
105704
|
+
<span class="field-key">Ports</span>
|
|
105705
|
+
<span class="field-value mono">${formatPorts(match2.ports)}</span>
|
|
105706
|
+
</div>
|
|
105707
|
+
${match2.domains ? b2`
|
|
105708
|
+
<div class="field-row">
|
|
105709
|
+
<span class="field-key">Domains</span>
|
|
105710
|
+
<span class="field-value">${this.renderDomains(match2.domains)}</span>
|
|
105711
|
+
</div>
|
|
105712
|
+
` : ""}
|
|
105713
|
+
${match2.path ? b2`
|
|
105714
|
+
<div class="field-row">
|
|
105715
|
+
<span class="field-key">Path</span>
|
|
105716
|
+
<span class="field-value mono">${match2.path}</span>
|
|
105717
|
+
</div>
|
|
105718
|
+
` : ""}
|
|
105719
|
+
${match2.protocol ? b2`
|
|
105720
|
+
<div class="field-row">
|
|
105721
|
+
<span class="field-key">Protocol</span>
|
|
105722
|
+
<span class="field-value">
|
|
105723
|
+
<span class="protocol-badge ${match2.protocol}">${match2.protocol}</span>
|
|
105724
|
+
</span>
|
|
105725
|
+
</div>
|
|
105726
|
+
` : ""}
|
|
105727
|
+
${match2.clientIp && match2.clientIp.length > 0 ? b2`
|
|
105728
|
+
<div class="field-row">
|
|
105729
|
+
<span class="field-key">Client</span>
|
|
105730
|
+
<span class="field-value mono">${match2.clientIp.join(", ")}</span>
|
|
105731
|
+
</div>
|
|
105732
|
+
` : ""}
|
|
105733
|
+
${match2.tlsVersion && match2.tlsVersion.length > 0 ? b2`
|
|
105734
|
+
<div class="field-row">
|
|
105735
|
+
<span class="field-key">TLS Ver</span>
|
|
105736
|
+
<span class="field-value">${match2.tlsVersion.join(", ")}</span>
|
|
105737
|
+
</div>
|
|
105738
|
+
` : ""}
|
|
105739
|
+
${match2.headers ? b2`
|
|
105740
|
+
<div class="field-row">
|
|
105741
|
+
<span class="field-key">Headers</span>
|
|
105742
|
+
<span class="field-value">
|
|
105743
|
+
${Object.entries(match2.headers).map(
|
|
105744
|
+
([k4, v5]) => b2`<span class="header-pair">${k4}=${v5}</span> `
|
|
105745
|
+
)}
|
|
105746
|
+
</span>
|
|
105747
|
+
</div>
|
|
105748
|
+
` : ""}
|
|
105749
|
+
</div>
|
|
105750
|
+
|
|
105751
|
+
<!-- Action Section -->
|
|
105752
|
+
<div class="section action">
|
|
105753
|
+
<div class="section-label">Action</div>
|
|
105754
|
+
${action.targets && action.targets.length > 0 ? b2`
|
|
105755
|
+
<div class="field-row">
|
|
105756
|
+
<span class="field-key">Targets</span>
|
|
105757
|
+
<span class="field-value mono">${formatTargets(action.targets).join(", ")}</span>
|
|
105758
|
+
</div>
|
|
105759
|
+
` : ""}
|
|
105760
|
+
${action.tls ? b2`
|
|
105761
|
+
<div class="field-row">
|
|
105762
|
+
<span class="field-key">TLS</span>
|
|
105763
|
+
<span class="field-value">
|
|
105764
|
+
${action.tls.mode}
|
|
105765
|
+
${action.tls.certificate ? action.tls.certificate === "auto" ? b2` <span class="tls-badge auto">auto cert</span>` : b2` <span class="tls-badge custom">custom cert</span>` : ""}
|
|
105766
|
+
</span>
|
|
105767
|
+
</div>
|
|
105768
|
+
` : ""}
|
|
105769
|
+
${action.forwardingEngine ? b2`
|
|
105770
|
+
<div class="field-row">
|
|
105771
|
+
<span class="field-key">Engine</span>
|
|
105772
|
+
<span class="field-value"><span class="engine-badge">${action.forwardingEngine}</span></span>
|
|
105773
|
+
</div>
|
|
105774
|
+
` : ""}
|
|
105775
|
+
${action.loadBalancing ? b2`
|
|
105776
|
+
<div class="field-row">
|
|
105777
|
+
<span class="field-key">LB</span>
|
|
105778
|
+
<span class="field-value">${action.loadBalancing.algorithm}</span>
|
|
105779
|
+
</div>
|
|
105780
|
+
` : ""}
|
|
105781
|
+
${action.websocket?.enabled ? b2`
|
|
105782
|
+
<div class="field-row">
|
|
105783
|
+
<span class="field-key">WS</span>
|
|
105784
|
+
<span class="field-value"><span class="badge enabled">enabled</span></span>
|
|
105785
|
+
</div>
|
|
105786
|
+
` : ""}
|
|
105787
|
+
</div>
|
|
105788
|
+
|
|
105789
|
+
<!-- Security Section -->
|
|
105790
|
+
${security ? b2`
|
|
105791
|
+
<div class="section security">
|
|
105792
|
+
<div class="section-label">Security</div>
|
|
105793
|
+
${security.ipAllowList && security.ipAllowList.length > 0 ? b2`
|
|
105794
|
+
<div class="field-row">
|
|
105795
|
+
<span class="field-key">Allow</span>
|
|
105796
|
+
<span class="field-value mono">${security.ipAllowList.join(", ")}</span>
|
|
105797
|
+
</div>
|
|
105798
|
+
` : ""}
|
|
105799
|
+
${security.ipBlockList && security.ipBlockList.length > 0 ? b2`
|
|
105800
|
+
<div class="field-row">
|
|
105801
|
+
<span class="field-key">Block</span>
|
|
105802
|
+
<span class="field-value mono">${security.ipBlockList.join(", ")}</span>
|
|
105803
|
+
</div>
|
|
105804
|
+
` : ""}
|
|
105805
|
+
${security.rateLimit?.enabled ? b2`
|
|
105806
|
+
<div class="field-row">
|
|
105807
|
+
<span class="field-key">Rate</span>
|
|
105808
|
+
<span class="field-value">${security.rateLimit.maxRequests} req / ${security.rateLimit.window}s</span>
|
|
105809
|
+
</div>
|
|
105810
|
+
` : ""}
|
|
105811
|
+
${security.maxConnections ? b2`
|
|
105812
|
+
<div class="field-row">
|
|
105813
|
+
<span class="field-key">Max Conn</span>
|
|
105814
|
+
<span class="field-value">${security.maxConnections}</span>
|
|
105815
|
+
</div>
|
|
105816
|
+
` : ""}
|
|
105817
|
+
</div>
|
|
105818
|
+
` : ""}
|
|
105819
|
+
|
|
105820
|
+
<!-- Feature Icons Row -->
|
|
105821
|
+
${this.renderFeatures()}
|
|
105822
|
+
</div>
|
|
105823
|
+
`;
|
|
105824
|
+
}
|
|
105825
|
+
renderDomains(domains) {
|
|
105826
|
+
const list5 = Array.isArray(domains) ? domains : [domains];
|
|
105827
|
+
return b2`${list5.map(
|
|
105828
|
+
(d6) => b2`<span class="domain-chip ${d6.includes("*") ? "glob" : ""}">${d6}</span>`
|
|
105829
|
+
)}`;
|
|
105830
|
+
}
|
|
105831
|
+
renderFeatures() {
|
|
105832
|
+
if (!this.route) return b2``;
|
|
105833
|
+
const features = [];
|
|
105834
|
+
const action = this.route.action;
|
|
105835
|
+
const security = this.route.security;
|
|
105836
|
+
const headers = this.route.headers;
|
|
105837
|
+
if (action.tls) {
|
|
105838
|
+
features.push(b2`<span class="feature"><span class="feature-icon">🔒</span>TLS</span>`);
|
|
105839
|
+
}
|
|
105840
|
+
if (action.websocket?.enabled) {
|
|
105841
|
+
features.push(b2`<span class="feature"><span class="feature-icon">↔</span>WS</span>`);
|
|
105842
|
+
}
|
|
105843
|
+
if (action.loadBalancing) {
|
|
105844
|
+
features.push(b2`<span class="feature"><span class="feature-icon">⚖</span>LB</span>`);
|
|
105845
|
+
}
|
|
105846
|
+
if (security) {
|
|
105847
|
+
features.push(b2`<span class="feature"><span class="feature-icon">🛡</span>Security</span>`);
|
|
105848
|
+
}
|
|
105849
|
+
if (headers) {
|
|
105850
|
+
features.push(b2`<span class="feature"><span class="feature-icon">⚙</span>Headers</span>`);
|
|
105851
|
+
}
|
|
105852
|
+
if (features.length === 0) return b2``;
|
|
105853
|
+
return b2`<div class="features-row">${features}</div>`;
|
|
105854
|
+
}
|
|
105855
|
+
};
|
|
105856
|
+
_init30 = __decoratorStart(_a30);
|
|
105857
|
+
_route = new WeakMap();
|
|
105858
|
+
__decorateElement(_init30, 4, "route", _route_dec, SzRouteCard, _route);
|
|
105859
|
+
SzRouteCard = __decorateElement(_init30, 0, "SzRouteCard", _SzRouteCard_decorators, SzRouteCard);
|
|
105860
|
+
__publicField(SzRouteCard, "demo", () => b2`
|
|
105861
|
+
<div style="padding: 24px; max-width: 520px;">
|
|
105862
|
+
<sz-route-card
|
|
105863
|
+
.route=${{
|
|
105864
|
+
name: "API Gateway",
|
|
105865
|
+
description: "Main API gateway with TLS termination and load balancing",
|
|
105866
|
+
enabled: true,
|
|
105867
|
+
priority: 10,
|
|
105868
|
+
tags: ["web", "api", "production"],
|
|
105869
|
+
match: {
|
|
105870
|
+
ports: [443, 8443],
|
|
105871
|
+
domains: ["api.example.com", "*.api.serve.zone"],
|
|
105872
|
+
path: "/api/*",
|
|
105873
|
+
protocol: "http",
|
|
105874
|
+
clientIp: ["10.0.0.0/8"]
|
|
105875
|
+
},
|
|
105876
|
+
action: {
|
|
105877
|
+
type: "forward",
|
|
105878
|
+
targets: [
|
|
105879
|
+
{ host: ["10.0.0.1", "10.0.0.2"], port: 8080 }
|
|
105880
|
+
],
|
|
105881
|
+
tls: { mode: "terminate", certificate: "auto" },
|
|
105882
|
+
websocket: { enabled: true },
|
|
105883
|
+
loadBalancing: { algorithm: "round-robin" },
|
|
105884
|
+
forwardingEngine: "nftables"
|
|
105885
|
+
},
|
|
105886
|
+
security: {
|
|
105887
|
+
ipAllowList: ["10.0.0.0/8"],
|
|
105888
|
+
ipBlockList: ["192.168.100.0/24"],
|
|
105889
|
+
rateLimit: { enabled: true, maxRequests: 100, window: 60 },
|
|
105890
|
+
maxConnections: 1e3
|
|
105891
|
+
}
|
|
105892
|
+
}}
|
|
105893
|
+
></sz-route-card>
|
|
105894
|
+
</div>
|
|
105895
|
+
`);
|
|
105896
|
+
__publicField(SzRouteCard, "demoGroups", ["Routes"]);
|
|
105897
|
+
__publicField(SzRouteCard, "styles", [
|
|
105898
|
+
cssManager.defaultStyles,
|
|
105899
|
+
i`
|
|
105900
|
+
:host {
|
|
105901
|
+
display: block;
|
|
105902
|
+
}
|
|
105903
|
+
|
|
105904
|
+
.card {
|
|
105905
|
+
background: ${cssManager.bdTheme("#ffffff", "#09090b")};
|
|
105906
|
+
border: 1px solid ${cssManager.bdTheme("#e4e4e7", "#27272a")};
|
|
105907
|
+
border-radius: 8px;
|
|
105908
|
+
padding: 20px;
|
|
105909
|
+
transition: border-color 200ms ease, box-shadow 200ms ease;
|
|
105910
|
+
}
|
|
105911
|
+
|
|
105912
|
+
.card:hover {
|
|
105913
|
+
border-color: ${cssManager.bdTheme("#d4d4d8", "#3f3f46")};
|
|
105914
|
+
box-shadow: 0 2px 8px ${cssManager.bdTheme("rgba(0,0,0,0.06)", "rgba(0,0,0,0.2)")};
|
|
105915
|
+
}
|
|
105916
|
+
|
|
105917
|
+
/* Header */
|
|
105918
|
+
.header {
|
|
105919
|
+
display: flex;
|
|
105920
|
+
align-items: flex-start;
|
|
105921
|
+
justify-content: space-between;
|
|
105922
|
+
gap: 12px;
|
|
105923
|
+
margin-bottom: 4px;
|
|
105924
|
+
}
|
|
105925
|
+
|
|
105926
|
+
.header-left {
|
|
105927
|
+
display: flex;
|
|
105928
|
+
align-items: center;
|
|
105929
|
+
gap: 8px;
|
|
105930
|
+
min-width: 0;
|
|
105931
|
+
}
|
|
105932
|
+
|
|
105933
|
+
.status-dot {
|
|
105934
|
+
width: 8px;
|
|
105935
|
+
height: 8px;
|
|
105936
|
+
border-radius: 50%;
|
|
105937
|
+
flex-shrink: 0;
|
|
105938
|
+
}
|
|
105939
|
+
|
|
105940
|
+
.status-dot.enabled {
|
|
105941
|
+
background: ${cssManager.bdTheme("#22c55e", "#22c55e")};
|
|
105942
|
+
box-shadow: 0 0 6px ${cssManager.bdTheme("rgba(34,197,94,0.4)", "rgba(34,197,94,0.3)")};
|
|
105943
|
+
}
|
|
105944
|
+
|
|
105945
|
+
.status-dot.disabled {
|
|
105946
|
+
background: ${cssManager.bdTheme("#a1a1aa", "#52525b")};
|
|
105947
|
+
}
|
|
105948
|
+
|
|
105949
|
+
.route-name {
|
|
105950
|
+
font-size: 15px;
|
|
105951
|
+
font-weight: 600;
|
|
105952
|
+
color: ${cssManager.bdTheme("#18181b", "#fafafa")};
|
|
105953
|
+
white-space: nowrap;
|
|
105954
|
+
overflow: hidden;
|
|
105955
|
+
text-overflow: ellipsis;
|
|
105956
|
+
}
|
|
105957
|
+
|
|
105958
|
+
.header-badges {
|
|
105959
|
+
display: flex;
|
|
105960
|
+
gap: 6px;
|
|
105961
|
+
flex-shrink: 0;
|
|
105962
|
+
}
|
|
105963
|
+
|
|
105964
|
+
.badge {
|
|
105965
|
+
display: inline-flex;
|
|
105966
|
+
align-items: center;
|
|
105967
|
+
padding: 2px 8px;
|
|
105968
|
+
border-radius: 9999px;
|
|
105969
|
+
font-size: 11px;
|
|
105970
|
+
font-weight: 500;
|
|
105971
|
+
white-space: nowrap;
|
|
105972
|
+
}
|
|
105973
|
+
|
|
105974
|
+
.badge.forward {
|
|
105975
|
+
background: ${cssManager.bdTheme("#dbeafe", "rgba(59, 130, 246, 0.2)")};
|
|
105976
|
+
color: ${cssManager.bdTheme("#2563eb", "#60a5fa")};
|
|
105977
|
+
}
|
|
105978
|
+
|
|
105979
|
+
.badge.socket-handler {
|
|
105980
|
+
background: ${cssManager.bdTheme("#ede9fe", "rgba(139, 92, 246, 0.2)")};
|
|
105981
|
+
color: ${cssManager.bdTheme("#7c3aed", "#a78bfa")};
|
|
105982
|
+
}
|
|
105983
|
+
|
|
105984
|
+
.badge.enabled {
|
|
105985
|
+
background: ${cssManager.bdTheme("#dcfce7", "rgba(34, 197, 94, 0.2)")};
|
|
105986
|
+
color: ${cssManager.bdTheme("#16a34a", "#22c55e")};
|
|
105987
|
+
}
|
|
105988
|
+
|
|
105989
|
+
.badge.disabled {
|
|
105990
|
+
background: ${cssManager.bdTheme("#f4f4f5", "rgba(113, 113, 122, 0.2)")};
|
|
105991
|
+
color: ${cssManager.bdTheme("#71717a", "#a1a1aa")};
|
|
105992
|
+
}
|
|
105993
|
+
|
|
105994
|
+
.description {
|
|
105995
|
+
font-size: 13px;
|
|
105996
|
+
color: ${cssManager.bdTheme("#71717a", "#a1a1aa")};
|
|
105997
|
+
margin-bottom: 8px;
|
|
105998
|
+
line-height: 1.4;
|
|
105999
|
+
}
|
|
106000
|
+
|
|
106001
|
+
.meta-row {
|
|
106002
|
+
display: flex;
|
|
106003
|
+
align-items: center;
|
|
106004
|
+
justify-content: space-between;
|
|
106005
|
+
flex-wrap: wrap;
|
|
106006
|
+
gap: 6px;
|
|
106007
|
+
margin-bottom: 16px;
|
|
106008
|
+
}
|
|
106009
|
+
|
|
106010
|
+
.tags {
|
|
106011
|
+
display: flex;
|
|
106012
|
+
flex-wrap: wrap;
|
|
106013
|
+
gap: 4px;
|
|
106014
|
+
}
|
|
106015
|
+
|
|
106016
|
+
.tag {
|
|
106017
|
+
padding: 2px 8px;
|
|
106018
|
+
background: ${cssManager.bdTheme("#f4f4f5", "#27272a")};
|
|
106019
|
+
border-radius: 4px;
|
|
106020
|
+
font-size: 11px;
|
|
106021
|
+
font-weight: 500;
|
|
106022
|
+
color: ${cssManager.bdTheme("#52525b", "#a1a1aa")};
|
|
106023
|
+
}
|
|
106024
|
+
|
|
106025
|
+
.priority {
|
|
106026
|
+
font-size: 11px;
|
|
106027
|
+
color: ${cssManager.bdTheme("#a1a1aa", "#71717a")};
|
|
106028
|
+
font-weight: 500;
|
|
106029
|
+
}
|
|
106030
|
+
|
|
106031
|
+
/* Sections */
|
|
106032
|
+
.section {
|
|
106033
|
+
border-left: 3px solid;
|
|
106034
|
+
padding: 10px 14px;
|
|
106035
|
+
margin-bottom: 12px;
|
|
106036
|
+
border-radius: 0 6px 6px 0;
|
|
106037
|
+
background: ${cssManager.bdTheme("#fafafa", "#0a0a0a")};
|
|
106038
|
+
}
|
|
106039
|
+
|
|
106040
|
+
.section:last-of-type {
|
|
106041
|
+
margin-bottom: 0;
|
|
106042
|
+
}
|
|
106043
|
+
|
|
106044
|
+
.section.match {
|
|
106045
|
+
border-left-color: ${cssManager.bdTheme("#3b82f6", "#3b82f6")};
|
|
106046
|
+
}
|
|
106047
|
+
|
|
106048
|
+
.section.action {
|
|
106049
|
+
border-left-color: ${cssManager.bdTheme("#22c55e", "#22c55e")};
|
|
106050
|
+
}
|
|
106051
|
+
|
|
106052
|
+
.section.security {
|
|
106053
|
+
border-left-color: ${cssManager.bdTheme("#f59e0b", "#f59e0b")};
|
|
106054
|
+
}
|
|
106055
|
+
|
|
106056
|
+
.section-label {
|
|
106057
|
+
font-size: 10px;
|
|
106058
|
+
font-weight: 600;
|
|
106059
|
+
text-transform: uppercase;
|
|
106060
|
+
letter-spacing: 0.08em;
|
|
106061
|
+
color: ${cssManager.bdTheme("#a1a1aa", "#71717a")};
|
|
106062
|
+
margin-bottom: 8px;
|
|
106063
|
+
}
|
|
106064
|
+
|
|
106065
|
+
.field-row {
|
|
106066
|
+
display: flex;
|
|
106067
|
+
gap: 8px;
|
|
106068
|
+
margin-bottom: 5px;
|
|
106069
|
+
font-size: 13px;
|
|
106070
|
+
line-height: 1.5;
|
|
106071
|
+
}
|
|
106072
|
+
|
|
106073
|
+
.field-row:last-child {
|
|
106074
|
+
margin-bottom: 0;
|
|
106075
|
+
}
|
|
106076
|
+
|
|
106077
|
+
.field-key {
|
|
106078
|
+
color: ${cssManager.bdTheme("#71717a", "#a1a1aa")};
|
|
106079
|
+
min-width: 64px;
|
|
106080
|
+
flex-shrink: 0;
|
|
106081
|
+
font-weight: 500;
|
|
106082
|
+
}
|
|
106083
|
+
|
|
106084
|
+
.field-value {
|
|
106085
|
+
color: ${cssManager.bdTheme("#18181b", "#e4e4e7")};
|
|
106086
|
+
word-break: break-all;
|
|
106087
|
+
}
|
|
106088
|
+
|
|
106089
|
+
.domain-chip {
|
|
106090
|
+
display: inline-flex;
|
|
106091
|
+
padding: 1px 6px;
|
|
106092
|
+
background: ${cssManager.bdTheme("#eff6ff", "rgba(59, 130, 246, 0.1)")};
|
|
106093
|
+
border-radius: 3px;
|
|
106094
|
+
font-size: 12px;
|
|
106095
|
+
margin-right: 4px;
|
|
106096
|
+
margin-bottom: 2px;
|
|
106097
|
+
font-family: monospace;
|
|
106098
|
+
}
|
|
106099
|
+
|
|
106100
|
+
.domain-chip.glob {
|
|
106101
|
+
background: ${cssManager.bdTheme("#fef3c7", "rgba(245, 158, 11, 0.15)")};
|
|
106102
|
+
color: ${cssManager.bdTheme("#92400e", "#fbbf24")};
|
|
106103
|
+
}
|
|
106104
|
+
|
|
106105
|
+
.mono {
|
|
106106
|
+
font-family: monospace;
|
|
106107
|
+
font-size: 12px;
|
|
106108
|
+
}
|
|
106109
|
+
|
|
106110
|
+
.protocol-badge {
|
|
106111
|
+
display: inline-flex;
|
|
106112
|
+
padding: 1px 6px;
|
|
106113
|
+
border-radius: 3px;
|
|
106114
|
+
font-size: 11px;
|
|
106115
|
+
font-weight: 500;
|
|
106116
|
+
}
|
|
106117
|
+
|
|
106118
|
+
.protocol-badge.http {
|
|
106119
|
+
background: ${cssManager.bdTheme("#dbeafe", "rgba(59, 130, 246, 0.2)")};
|
|
106120
|
+
color: ${cssManager.bdTheme("#2563eb", "#60a5fa")};
|
|
106121
|
+
}
|
|
106122
|
+
|
|
106123
|
+
.protocol-badge.tcp {
|
|
106124
|
+
background: ${cssManager.bdTheme("#dcfce7", "rgba(34, 197, 94, 0.2)")};
|
|
106125
|
+
color: ${cssManager.bdTheme("#16a34a", "#22c55e")};
|
|
106126
|
+
}
|
|
106127
|
+
|
|
106128
|
+
.tls-badge {
|
|
106129
|
+
display: inline-flex;
|
|
106130
|
+
padding: 1px 6px;
|
|
106131
|
+
border-radius: 3px;
|
|
106132
|
+
font-size: 11px;
|
|
106133
|
+
font-weight: 500;
|
|
106134
|
+
}
|
|
106135
|
+
|
|
106136
|
+
.tls-badge.auto {
|
|
106137
|
+
background: ${cssManager.bdTheme("#dcfce7", "rgba(34, 197, 94, 0.2)")};
|
|
106138
|
+
color: ${cssManager.bdTheme("#16a34a", "#22c55e")};
|
|
106139
|
+
}
|
|
106140
|
+
|
|
106141
|
+
.tls-badge.custom {
|
|
106142
|
+
background: ${cssManager.bdTheme("#ffedd5", "rgba(249, 115, 22, 0.2)")};
|
|
106143
|
+
color: ${cssManager.bdTheme("#c2410c", "#fb923c")};
|
|
106144
|
+
}
|
|
106145
|
+
|
|
106146
|
+
.engine-badge {
|
|
106147
|
+
display: inline-flex;
|
|
106148
|
+
padding: 1px 6px;
|
|
106149
|
+
border-radius: 3px;
|
|
106150
|
+
font-size: 11px;
|
|
106151
|
+
font-weight: 500;
|
|
106152
|
+
background: ${cssManager.bdTheme("#fae8ff", "rgba(168, 85, 247, 0.2)")};
|
|
106153
|
+
color: ${cssManager.bdTheme("#7e22ce", "#c084fc")};
|
|
106154
|
+
}
|
|
106155
|
+
|
|
106156
|
+
.header-pair {
|
|
106157
|
+
display: inline;
|
|
106158
|
+
font-family: monospace;
|
|
106159
|
+
font-size: 12px;
|
|
106160
|
+
}
|
|
106161
|
+
|
|
106162
|
+
/* Feature icons */
|
|
106163
|
+
.features-row {
|
|
106164
|
+
display: flex;
|
|
106165
|
+
flex-wrap: wrap;
|
|
106166
|
+
gap: 10px;
|
|
106167
|
+
margin-top: 14px;
|
|
106168
|
+
padding-top: 12px;
|
|
106169
|
+
border-top: 1px solid ${cssManager.bdTheme("#f4f4f5", "#1a1a1a")};
|
|
106170
|
+
}
|
|
106171
|
+
|
|
106172
|
+
.feature {
|
|
106173
|
+
display: flex;
|
|
106174
|
+
align-items: center;
|
|
106175
|
+
gap: 4px;
|
|
106176
|
+
font-size: 11px;
|
|
106177
|
+
font-weight: 500;
|
|
106178
|
+
color: ${cssManager.bdTheme("#71717a", "#a1a1aa")};
|
|
106179
|
+
}
|
|
106180
|
+
|
|
106181
|
+
.feature-icon {
|
|
106182
|
+
font-size: 13px;
|
|
106183
|
+
}
|
|
106184
|
+
|
|
106185
|
+
.no-route {
|
|
106186
|
+
text-align: center;
|
|
106187
|
+
padding: 24px;
|
|
106188
|
+
color: ${cssManager.bdTheme("#a1a1aa", "#52525b")};
|
|
106189
|
+
font-size: 13px;
|
|
106190
|
+
}
|
|
106191
|
+
`
|
|
106192
|
+
]);
|
|
106193
|
+
__runInitializers(_init30, 1, SzRouteCard);
|
|
106194
|
+
|
|
106195
|
+
// ts_web/elements/sz-route-list-view.ts
|
|
106196
|
+
init_dist_ts29();
|
|
106197
|
+
var _enabledFilter_dec, _actionFilter_dec, _searchQuery_dec2, _routes_dec, _a31, _SzRouteListView_decorators, _init31, _routes, _searchQuery2, _actionFilter, _enabledFilter;
|
|
106198
|
+
_SzRouteListView_decorators = [t4("sz-route-list-view")];
|
|
106199
|
+
var SzRouteListView = class extends (_a31 = DeesElement, _routes_dec = [n5({ type: Array })], _searchQuery_dec2 = [r5()], _actionFilter_dec = [r5()], _enabledFilter_dec = [r5()], _a31) {
|
|
106200
|
+
constructor() {
|
|
106201
|
+
super(...arguments);
|
|
106202
|
+
__privateAdd(this, _routes, __runInitializers(_init31, 8, this, [])), __runInitializers(_init31, 11, this);
|
|
106203
|
+
__privateAdd(this, _searchQuery2, __runInitializers(_init31, 12, this, "")), __runInitializers(_init31, 15, this);
|
|
106204
|
+
__privateAdd(this, _actionFilter, __runInitializers(_init31, 16, this, "all")), __runInitializers(_init31, 19, this);
|
|
106205
|
+
__privateAdd(this, _enabledFilter, __runInitializers(_init31, 20, this, "all")), __runInitializers(_init31, 23, this);
|
|
106206
|
+
}
|
|
106207
|
+
get filteredRoutes() {
|
|
106208
|
+
return this.routes.filter((route) => {
|
|
106209
|
+
if (this.actionFilter !== "all" && route.action.type !== this.actionFilter) return false;
|
|
106210
|
+
if (this.enabledFilter === "enabled" && route.enabled === false) return false;
|
|
106211
|
+
if (this.enabledFilter === "disabled" && route.enabled !== false) return false;
|
|
106212
|
+
if (this.searchQuery) {
|
|
106213
|
+
const q = this.searchQuery.toLowerCase();
|
|
106214
|
+
return this.routeMatchesSearch(route, q);
|
|
106215
|
+
}
|
|
106216
|
+
return true;
|
|
106217
|
+
});
|
|
106218
|
+
}
|
|
106219
|
+
routeMatchesSearch(route, q) {
|
|
106220
|
+
if (route.name?.toLowerCase().includes(q)) return true;
|
|
106221
|
+
if (route.description?.toLowerCase().includes(q)) return true;
|
|
106222
|
+
if (route.match.domains) {
|
|
106223
|
+
const domains = Array.isArray(route.match.domains) ? route.match.domains : [route.match.domains];
|
|
106224
|
+
if (domains.some((d6) => d6.toLowerCase().includes(q))) return true;
|
|
106225
|
+
}
|
|
106226
|
+
const portsStr = this.formatPortsForSearch(route.match.ports);
|
|
106227
|
+
if (portsStr.includes(q)) return true;
|
|
106228
|
+
if (route.match.path?.toLowerCase().includes(q)) return true;
|
|
106229
|
+
if (route.match.clientIp?.some((ip) => ip.includes(q))) return true;
|
|
106230
|
+
if (route.action.targets) {
|
|
106231
|
+
for (const t9 of route.action.targets) {
|
|
106232
|
+
const hosts = Array.isArray(t9.host) ? t9.host : [t9.host];
|
|
106233
|
+
if (hosts.some((h9) => h9.toLowerCase().includes(q))) return true;
|
|
106234
|
+
}
|
|
106235
|
+
}
|
|
106236
|
+
if (route.tags?.some((t9) => t9.toLowerCase().includes(q))) return true;
|
|
106237
|
+
return false;
|
|
106238
|
+
}
|
|
106239
|
+
formatPortsForSearch(ports) {
|
|
106240
|
+
if (typeof ports === "number") return String(ports);
|
|
106241
|
+
if (Array.isArray(ports)) {
|
|
106242
|
+
return ports.map((p7) => typeof p7 === "number" ? String(p7) : `${p7.from}-${p7.to}`).join(" ");
|
|
106243
|
+
}
|
|
106244
|
+
return String(ports);
|
|
106245
|
+
}
|
|
106246
|
+
render() {
|
|
106247
|
+
const filtered = this.filteredRoutes;
|
|
106248
|
+
return b2`
|
|
106249
|
+
<div class="filter-bar">
|
|
106250
|
+
<input
|
|
106251
|
+
class="search-input"
|
|
106252
|
+
type="text"
|
|
106253
|
+
placeholder="Search routes by domain, IP, port, path, or tag..."
|
|
106254
|
+
.value=${this.searchQuery}
|
|
106255
|
+
@input=${(e11) => {
|
|
106256
|
+
this.searchQuery = e11.target.value;
|
|
106257
|
+
}}
|
|
106258
|
+
/>
|
|
106259
|
+
<div class="chip-group">
|
|
106260
|
+
${["all", "forward", "socket-handler"].map(
|
|
106261
|
+
(type5) => b2`
|
|
106262
|
+
<button
|
|
106263
|
+
class="chip ${this.actionFilter === type5 ? "active" : ""}"
|
|
106264
|
+
@click=${() => {
|
|
106265
|
+
this.actionFilter = type5;
|
|
106266
|
+
}}
|
|
106267
|
+
>
|
|
106268
|
+
${type5 === "all" ? "All" : type5 === "forward" ? "Forward" : "Socket Handler"}
|
|
106269
|
+
</button>
|
|
106270
|
+
`
|
|
106271
|
+
)}
|
|
106272
|
+
</div>
|
|
106273
|
+
<div class="chip-group">
|
|
106274
|
+
${["all", "enabled", "disabled"].map(
|
|
106275
|
+
(status) => b2`
|
|
106276
|
+
<button
|
|
106277
|
+
class="chip ${this.enabledFilter === status ? "active" : ""}"
|
|
106278
|
+
@click=${() => {
|
|
106279
|
+
this.enabledFilter = status;
|
|
106280
|
+
}}
|
|
106281
|
+
>
|
|
106282
|
+
${status.charAt(0).toUpperCase() + status.slice(1)}
|
|
106283
|
+
</button>
|
|
106284
|
+
`
|
|
106285
|
+
)}
|
|
106286
|
+
</div>
|
|
106287
|
+
</div>
|
|
106288
|
+
|
|
106289
|
+
<div class="results-count">
|
|
106290
|
+
Showing ${filtered.length} of ${this.routes.length} routes
|
|
106291
|
+
</div>
|
|
106292
|
+
|
|
106293
|
+
${filtered.length > 0 ? b2`
|
|
106294
|
+
<div class="grid">
|
|
106295
|
+
${filtered.map(
|
|
106296
|
+
(route) => b2`
|
|
106297
|
+
<sz-route-card
|
|
106298
|
+
.route=${route}
|
|
106299
|
+
@click=${() => this.handleRouteClick(route)}
|
|
106300
|
+
></sz-route-card>
|
|
106301
|
+
`
|
|
106302
|
+
)}
|
|
106303
|
+
</div>
|
|
106304
|
+
` : b2`
|
|
106305
|
+
<div class="empty-state">
|
|
106306
|
+
<div class="empty-state-icon">🔍</div>
|
|
106307
|
+
<div>No routes match your filters</div>
|
|
106308
|
+
</div>
|
|
106309
|
+
`}
|
|
106310
|
+
`;
|
|
106311
|
+
}
|
|
106312
|
+
handleRouteClick(route) {
|
|
106313
|
+
this.dispatchEvent(
|
|
106314
|
+
new CustomEvent("route-click", {
|
|
106315
|
+
detail: route,
|
|
106316
|
+
bubbles: true,
|
|
106317
|
+
composed: true
|
|
106318
|
+
})
|
|
106319
|
+
);
|
|
106320
|
+
}
|
|
106321
|
+
};
|
|
106322
|
+
_init31 = __decoratorStart(_a31);
|
|
106323
|
+
_routes = new WeakMap();
|
|
106324
|
+
_searchQuery2 = new WeakMap();
|
|
106325
|
+
_actionFilter = new WeakMap();
|
|
106326
|
+
_enabledFilter = new WeakMap();
|
|
106327
|
+
__decorateElement(_init31, 4, "routes", _routes_dec, SzRouteListView, _routes);
|
|
106328
|
+
__decorateElement(_init31, 4, "searchQuery", _searchQuery_dec2, SzRouteListView, _searchQuery2);
|
|
106329
|
+
__decorateElement(_init31, 4, "actionFilter", _actionFilter_dec, SzRouteListView, _actionFilter);
|
|
106330
|
+
__decorateElement(_init31, 4, "enabledFilter", _enabledFilter_dec, SzRouteListView, _enabledFilter);
|
|
106331
|
+
SzRouteListView = __decorateElement(_init31, 0, "SzRouteListView", _SzRouteListView_decorators, SzRouteListView);
|
|
106332
|
+
__publicField(SzRouteListView, "demo", () => b2`
|
|
106333
|
+
<div style="padding: 24px; max-width: 1200px;">
|
|
106334
|
+
<sz-route-list-view
|
|
106335
|
+
.routes=${[
|
|
106336
|
+
{
|
|
106337
|
+
name: "HTTPS Gateway",
|
|
106338
|
+
description: "Main web gateway with TLS termination",
|
|
106339
|
+
enabled: true,
|
|
106340
|
+
tags: ["web", "https", "production"],
|
|
106341
|
+
match: { ports: 443, domains: ["*.example.com", "serve.zone"], protocol: "http" },
|
|
106342
|
+
action: {
|
|
106343
|
+
type: "forward",
|
|
106344
|
+
targets: [{ host: "10.0.0.1", port: 8080 }],
|
|
106345
|
+
tls: { mode: "terminate", certificate: "auto" }
|
|
106346
|
+
}
|
|
106347
|
+
},
|
|
106348
|
+
{
|
|
106349
|
+
name: "SMTP Inbound",
|
|
106350
|
+
description: "Email relay for incoming mail",
|
|
106351
|
+
enabled: true,
|
|
106352
|
+
tags: ["email", "smtp"],
|
|
106353
|
+
match: { ports: 25, domains: "mail.serve.zone" },
|
|
106354
|
+
action: {
|
|
106355
|
+
type: "forward",
|
|
106356
|
+
targets: [{ host: "10.0.1.5", port: 25 }]
|
|
106357
|
+
}
|
|
106358
|
+
},
|
|
106359
|
+
{
|
|
106360
|
+
name: "WebSocket API",
|
|
106361
|
+
description: "Real-time WebSocket connections",
|
|
106362
|
+
enabled: true,
|
|
106363
|
+
tags: ["web", "api"],
|
|
106364
|
+
match: { ports: 443, domains: "ws.example.com", path: "/ws/*" },
|
|
106365
|
+
action: {
|
|
106366
|
+
type: "forward",
|
|
106367
|
+
targets: [{ host: "10.0.0.3", port: 9090 }],
|
|
106368
|
+
websocket: { enabled: true },
|
|
106369
|
+
tls: { mode: "terminate", certificate: "auto" }
|
|
106370
|
+
}
|
|
106371
|
+
},
|
|
106372
|
+
{
|
|
106373
|
+
name: "Maintenance Page",
|
|
106374
|
+
enabled: false,
|
|
106375
|
+
tags: ["web"],
|
|
106376
|
+
match: { ports: [80, 443], domains: "old.example.com" },
|
|
106377
|
+
action: { type: "socket-handler" }
|
|
106378
|
+
}
|
|
106379
|
+
]}
|
|
106380
|
+
></sz-route-list-view>
|
|
106381
|
+
</div>
|
|
106382
|
+
`);
|
|
106383
|
+
__publicField(SzRouteListView, "demoGroups", ["Routes"]);
|
|
106384
|
+
__publicField(SzRouteListView, "styles", [
|
|
106385
|
+
cssManager.defaultStyles,
|
|
106386
|
+
i`
|
|
106387
|
+
:host {
|
|
106388
|
+
display: block;
|
|
106389
|
+
}
|
|
106390
|
+
|
|
106391
|
+
.filter-bar {
|
|
106392
|
+
display: flex;
|
|
106393
|
+
flex-wrap: wrap;
|
|
106394
|
+
gap: 12px;
|
|
106395
|
+
align-items: center;
|
|
106396
|
+
margin-bottom: 12px;
|
|
106397
|
+
}
|
|
106398
|
+
|
|
106399
|
+
.search-input {
|
|
106400
|
+
flex: 1;
|
|
106401
|
+
min-width: 200px;
|
|
106402
|
+
padding: 8px 12px;
|
|
106403
|
+
background: ${cssManager.bdTheme("#ffffff", "#09090b")};
|
|
106404
|
+
border: 1px solid ${cssManager.bdTheme("#e4e4e7", "#27272a")};
|
|
106405
|
+
border-radius: 6px;
|
|
106406
|
+
font-size: 14px;
|
|
106407
|
+
color: ${cssManager.bdTheme("#18181b", "#fafafa")};
|
|
106408
|
+
outline: none;
|
|
106409
|
+
transition: border-color 200ms ease;
|
|
106410
|
+
}
|
|
106411
|
+
|
|
106412
|
+
.search-input::placeholder {
|
|
106413
|
+
color: ${cssManager.bdTheme("#a1a1aa", "#52525b")};
|
|
106414
|
+
}
|
|
106415
|
+
|
|
106416
|
+
.search-input:focus {
|
|
106417
|
+
border-color: ${cssManager.bdTheme("#2563eb", "#3b82f6")};
|
|
106418
|
+
}
|
|
106419
|
+
|
|
106420
|
+
.chip-group {
|
|
106421
|
+
display: flex;
|
|
106422
|
+
gap: 4px;
|
|
106423
|
+
}
|
|
106424
|
+
|
|
106425
|
+
.chip {
|
|
106426
|
+
padding: 6px 12px;
|
|
106427
|
+
background: transparent;
|
|
106428
|
+
border: 1px solid ${cssManager.bdTheme("#e4e4e7", "#27272a")};
|
|
106429
|
+
border-radius: 9999px;
|
|
106430
|
+
font-size: 12px;
|
|
106431
|
+
font-weight: 500;
|
|
106432
|
+
color: ${cssManager.bdTheme("#71717a", "#a1a1aa")};
|
|
106433
|
+
cursor: pointer;
|
|
106434
|
+
transition: all 200ms ease;
|
|
106435
|
+
white-space: nowrap;
|
|
106436
|
+
}
|
|
106437
|
+
|
|
106438
|
+
.chip:hover {
|
|
106439
|
+
background: ${cssManager.bdTheme("#f4f4f5", "#18181b")};
|
|
106440
|
+
color: ${cssManager.bdTheme("#18181b", "#fafafa")};
|
|
106441
|
+
}
|
|
106442
|
+
|
|
106443
|
+
.chip.active {
|
|
106444
|
+
background: ${cssManager.bdTheme("#18181b", "#fafafa")};
|
|
106445
|
+
color: ${cssManager.bdTheme("#fafafa", "#18181b")};
|
|
106446
|
+
border-color: ${cssManager.bdTheme("#18181b", "#fafafa")};
|
|
106447
|
+
}
|
|
106448
|
+
|
|
106449
|
+
.results-count {
|
|
106450
|
+
font-size: 13px;
|
|
106451
|
+
color: ${cssManager.bdTheme("#71717a", "#a1a1aa")};
|
|
106452
|
+
margin-bottom: 16px;
|
|
106453
|
+
}
|
|
106454
|
+
|
|
106455
|
+
.grid {
|
|
106456
|
+
display: grid;
|
|
106457
|
+
grid-template-columns: repeat(auto-fill, minmax(420px, 1fr));
|
|
106458
|
+
gap: 16px;
|
|
106459
|
+
}
|
|
106460
|
+
|
|
106461
|
+
.grid sz-route-card {
|
|
106462
|
+
cursor: pointer;
|
|
106463
|
+
}
|
|
106464
|
+
|
|
106465
|
+
.empty-state {
|
|
106466
|
+
text-align: center;
|
|
106467
|
+
padding: 48px 24px;
|
|
106468
|
+
color: ${cssManager.bdTheme("#71717a", "#a1a1aa")};
|
|
106469
|
+
font-size: 14px;
|
|
106470
|
+
}
|
|
106471
|
+
|
|
106472
|
+
.empty-state-icon {
|
|
106473
|
+
font-size: 32px;
|
|
106474
|
+
margin-bottom: 12px;
|
|
106475
|
+
opacity: 0.5;
|
|
106476
|
+
}
|
|
106477
|
+
`
|
|
106478
|
+
]);
|
|
106479
|
+
__runInitializers(_init31, 1, SzRouteListView);
|
|
106480
|
+
|
|
105637
106481
|
// ts_web/elements/sz-demo-view-dashboard.ts
|
|
105638
106482
|
init_dist_ts29();
|
|
105639
|
-
var _SzDemoViewDashboard_decorators,
|
|
106483
|
+
var _SzDemoViewDashboard_decorators, _init32, _a32;
|
|
105640
106484
|
_SzDemoViewDashboard_decorators = [t4("sz-demo-view-dashboard")];
|
|
105641
|
-
var SzDemoViewDashboard = class extends (
|
|
106485
|
+
var SzDemoViewDashboard = class extends (_a32 = DeesElement) {
|
|
105642
106486
|
appui = null;
|
|
105643
106487
|
async onActivate(context2) {
|
|
105644
106488
|
this.appui = context2.appui;
|
|
@@ -105774,21 +106618,21 @@ var SzDemoViewDashboard = class extends (_a30 = DeesElement) {
|
|
|
105774
106618
|
`;
|
|
105775
106619
|
}
|
|
105776
106620
|
};
|
|
105777
|
-
|
|
105778
|
-
SzDemoViewDashboard = __decorateElement(
|
|
105779
|
-
__runInitializers(
|
|
106621
|
+
_init32 = __decoratorStart(_a32);
|
|
106622
|
+
SzDemoViewDashboard = __decorateElement(_init32, 0, "SzDemoViewDashboard", _SzDemoViewDashboard_decorators, SzDemoViewDashboard);
|
|
106623
|
+
__runInitializers(_init32, 1, SzDemoViewDashboard);
|
|
105780
106624
|
|
|
105781
106625
|
// ts_web/elements/sz-demo-view-services.ts
|
|
105782
106626
|
init_dist_ts29();
|
|
105783
|
-
var _selectedPlatformService_dec, _selectedService_dec, _currentView_dec2,
|
|
106627
|
+
var _selectedPlatformService_dec, _selectedService_dec, _currentView_dec2, _a33, _SzDemoViewServices_decorators, _init33, _currentView2, _selectedService, _selectedPlatformService;
|
|
105784
106628
|
_SzDemoViewServices_decorators = [t4("sz-demo-view-services")];
|
|
105785
|
-
var SzDemoViewServices = class extends (
|
|
106629
|
+
var SzDemoViewServices = class extends (_a33 = DeesElement, _currentView_dec2 = [r5()], _selectedService_dec = [r5()], _selectedPlatformService_dec = [r5()], _a33) {
|
|
105786
106630
|
constructor() {
|
|
105787
106631
|
super(...arguments);
|
|
105788
106632
|
__publicField(this, "appui", null);
|
|
105789
|
-
__privateAdd(this, _currentView2, __runInitializers(
|
|
105790
|
-
__privateAdd(this, _selectedService, __runInitializers(
|
|
105791
|
-
__privateAdd(this, _selectedPlatformService, __runInitializers(
|
|
106633
|
+
__privateAdd(this, _currentView2, __runInitializers(_init33, 8, this, "list")), __runInitializers(_init33, 11, this);
|
|
106634
|
+
__privateAdd(this, _selectedService, __runInitializers(_init33, 12, this, null)), __runInitializers(_init33, 15, this);
|
|
106635
|
+
__privateAdd(this, _selectedPlatformService, __runInitializers(_init33, 16, this, null)), __runInitializers(_init33, 19, this);
|
|
105792
106636
|
__publicField(this, "demoServices", [
|
|
105793
106637
|
{
|
|
105794
106638
|
id: "1",
|
|
@@ -106069,14 +106913,14 @@ var SzDemoViewServices = class extends (_a31 = DeesElement, _currentView_dec2 =
|
|
|
106069
106913
|
onDeactivate() {
|
|
106070
106914
|
}
|
|
106071
106915
|
};
|
|
106072
|
-
|
|
106916
|
+
_init33 = __decoratorStart(_a33);
|
|
106073
106917
|
_currentView2 = new WeakMap();
|
|
106074
106918
|
_selectedService = new WeakMap();
|
|
106075
106919
|
_selectedPlatformService = new WeakMap();
|
|
106076
|
-
__decorateElement(
|
|
106077
|
-
__decorateElement(
|
|
106078
|
-
__decorateElement(
|
|
106079
|
-
SzDemoViewServices = __decorateElement(
|
|
106920
|
+
__decorateElement(_init33, 4, "currentView", _currentView_dec2, SzDemoViewServices, _currentView2);
|
|
106921
|
+
__decorateElement(_init33, 4, "selectedService", _selectedService_dec, SzDemoViewServices, _selectedService);
|
|
106922
|
+
__decorateElement(_init33, 4, "selectedPlatformService", _selectedPlatformService_dec, SzDemoViewServices, _selectedPlatformService);
|
|
106923
|
+
SzDemoViewServices = __decorateElement(_init33, 0, "SzDemoViewServices", _SzDemoViewServices_decorators, SzDemoViewServices);
|
|
106080
106924
|
__publicField(SzDemoViewServices, "styles", [
|
|
106081
106925
|
cssManager.defaultStyles,
|
|
106082
106926
|
i`
|
|
@@ -106208,18 +107052,18 @@ __publicField(SzDemoViewServices, "styles", [
|
|
|
106208
107052
|
}
|
|
106209
107053
|
`
|
|
106210
107054
|
]);
|
|
106211
|
-
__runInitializers(
|
|
107055
|
+
__runInitializers(_init33, 1, SzDemoViewServices);
|
|
106212
107056
|
|
|
106213
107057
|
// ts_web/elements/sz-demo-view-network.ts
|
|
106214
107058
|
init_dist_ts29();
|
|
106215
|
-
var _selectedDomain_dec, _currentTab_dec,
|
|
107059
|
+
var _selectedDomain_dec, _currentTab_dec, _a34, _SzDemoViewNetwork_decorators, _init34, _currentTab, _selectedDomain;
|
|
106216
107060
|
_SzDemoViewNetwork_decorators = [t4("sz-demo-view-network")];
|
|
106217
|
-
var SzDemoViewNetwork = class extends (
|
|
107061
|
+
var SzDemoViewNetwork = class extends (_a34 = DeesElement, _currentTab_dec = [r5()], _selectedDomain_dec = [r5()], _a34) {
|
|
106218
107062
|
constructor() {
|
|
106219
107063
|
super(...arguments);
|
|
106220
107064
|
__publicField(this, "appui", null);
|
|
106221
|
-
__privateAdd(this, _currentTab, __runInitializers(
|
|
106222
|
-
__privateAdd(this, _selectedDomain, __runInitializers(
|
|
107065
|
+
__privateAdd(this, _currentTab, __runInitializers(_init34, 8, this, "proxy")), __runInitializers(_init34, 11, this);
|
|
107066
|
+
__privateAdd(this, _selectedDomain, __runInitializers(_init34, 12, this, null)), __runInitializers(_init34, 15, this);
|
|
106223
107067
|
__publicField(this, "demoProxyRoutes", [
|
|
106224
107068
|
{ id: "1", domain: "api.example.com", target: "http://api-gateway:3000", ssl: true, status: "active" },
|
|
106225
107069
|
{ id: "2", domain: "app.example.com", target: "http://frontend:8080", ssl: true, status: "active" },
|
|
@@ -106467,12 +107311,12 @@ var SzDemoViewNetwork = class extends (_a32 = DeesElement, _currentTab_dec = [r5
|
|
|
106467
107311
|
`;
|
|
106468
107312
|
}
|
|
106469
107313
|
};
|
|
106470
|
-
|
|
107314
|
+
_init34 = __decoratorStart(_a34);
|
|
106471
107315
|
_currentTab = new WeakMap();
|
|
106472
107316
|
_selectedDomain = new WeakMap();
|
|
106473
|
-
__decorateElement(
|
|
106474
|
-
__decorateElement(
|
|
106475
|
-
SzDemoViewNetwork = __decorateElement(
|
|
107317
|
+
__decorateElement(_init34, 4, "currentTab", _currentTab_dec, SzDemoViewNetwork, _currentTab);
|
|
107318
|
+
__decorateElement(_init34, 4, "selectedDomain", _selectedDomain_dec, SzDemoViewNetwork, _selectedDomain);
|
|
107319
|
+
SzDemoViewNetwork = __decorateElement(_init34, 0, "SzDemoViewNetwork", _SzDemoViewNetwork_decorators, SzDemoViewNetwork);
|
|
106476
107320
|
__publicField(SzDemoViewNetwork, "styles", [
|
|
106477
107321
|
cssManager.defaultStyles,
|
|
106478
107322
|
i`
|
|
@@ -106560,17 +107404,17 @@ __publicField(SzDemoViewNetwork, "styles", [
|
|
|
106560
107404
|
}
|
|
106561
107405
|
`
|
|
106562
107406
|
]);
|
|
106563
|
-
__runInitializers(
|
|
107407
|
+
__runInitializers(_init34, 1, SzDemoViewNetwork);
|
|
106564
107408
|
|
|
106565
107409
|
// ts_web/elements/sz-demo-view-registries.ts
|
|
106566
107410
|
init_dist_ts29();
|
|
106567
|
-
var _currentTab_dec2,
|
|
107411
|
+
var _currentTab_dec2, _a35, _SzDemoViewRegistries_decorators, _init35, _currentTab2;
|
|
106568
107412
|
_SzDemoViewRegistries_decorators = [t4("sz-demo-view-registries")];
|
|
106569
|
-
var SzDemoViewRegistries = class extends (
|
|
107413
|
+
var SzDemoViewRegistries = class extends (_a35 = DeesElement, _currentTab_dec2 = [r5()], _a35) {
|
|
106570
107414
|
constructor() {
|
|
106571
107415
|
super(...arguments);
|
|
106572
107416
|
__publicField(this, "appui", null);
|
|
106573
|
-
__privateAdd(this, _currentTab2, __runInitializers(
|
|
107417
|
+
__privateAdd(this, _currentTab2, __runInitializers(_init35, 8, this, "onebox")), __runInitializers(_init35, 11, this);
|
|
106574
107418
|
__publicField(this, "demoOneboxImages", [
|
|
106575
107419
|
{ id: "1", name: "api-gateway", tags: ["latest", "v2.1.0", "v2.0.0"], size: "256 MB", updated: "2024-01-20", pulls: 142 },
|
|
106576
107420
|
{ id: "2", name: "frontend", tags: ["latest", "v1.5.0"], size: "128 MB", updated: "2024-01-19", pulls: 89 },
|
|
@@ -106687,10 +107531,10 @@ var SzDemoViewRegistries = class extends (_a33 = DeesElement, _currentTab_dec2 =
|
|
|
106687
107531
|
`;
|
|
106688
107532
|
}
|
|
106689
107533
|
};
|
|
106690
|
-
|
|
107534
|
+
_init35 = __decoratorStart(_a35);
|
|
106691
107535
|
_currentTab2 = new WeakMap();
|
|
106692
|
-
__decorateElement(
|
|
106693
|
-
SzDemoViewRegistries = __decorateElement(
|
|
107536
|
+
__decorateElement(_init35, 4, "currentTab", _currentTab_dec2, SzDemoViewRegistries, _currentTab2);
|
|
107537
|
+
SzDemoViewRegistries = __decorateElement(_init35, 0, "SzDemoViewRegistries", _SzDemoViewRegistries_decorators, SzDemoViewRegistries);
|
|
106694
107538
|
__publicField(SzDemoViewRegistries, "styles", [
|
|
106695
107539
|
cssManager.defaultStyles,
|
|
106696
107540
|
i`
|
|
@@ -106758,13 +107602,13 @@ __publicField(SzDemoViewRegistries, "styles", [
|
|
|
106758
107602
|
}
|
|
106759
107603
|
`
|
|
106760
107604
|
]);
|
|
106761
|
-
__runInitializers(
|
|
107605
|
+
__runInitializers(_init35, 1, SzDemoViewRegistries);
|
|
106762
107606
|
|
|
106763
107607
|
// ts_web/elements/sz-demo-view-tokens.ts
|
|
106764
107608
|
init_dist_ts29();
|
|
106765
|
-
var _SzDemoViewTokens_decorators,
|
|
107609
|
+
var _SzDemoViewTokens_decorators, _init36, _a36;
|
|
106766
107610
|
_SzDemoViewTokens_decorators = [t4("sz-demo-view-tokens")];
|
|
106767
|
-
var SzDemoViewTokens = class extends (
|
|
107611
|
+
var SzDemoViewTokens = class extends (_a36 = DeesElement) {
|
|
106768
107612
|
appui = null;
|
|
106769
107613
|
async onActivate(context2) {
|
|
106770
107614
|
this.appui = context2.appui;
|
|
@@ -106855,15 +107699,15 @@ var SzDemoViewTokens = class extends (_a34 = DeesElement) {
|
|
|
106855
107699
|
`;
|
|
106856
107700
|
}
|
|
106857
107701
|
};
|
|
106858
|
-
|
|
106859
|
-
SzDemoViewTokens = __decorateElement(
|
|
106860
|
-
__runInitializers(
|
|
107702
|
+
_init36 = __decoratorStart(_a36);
|
|
107703
|
+
SzDemoViewTokens = __decorateElement(_init36, 0, "SzDemoViewTokens", _SzDemoViewTokens_decorators, SzDemoViewTokens);
|
|
107704
|
+
__runInitializers(_init36, 1, SzDemoViewTokens);
|
|
106861
107705
|
|
|
106862
107706
|
// ts_web/elements/sz-demo-view-settings.ts
|
|
106863
107707
|
init_dist_ts29();
|
|
106864
|
-
var _SzDemoViewSettings_decorators,
|
|
107708
|
+
var _SzDemoViewSettings_decorators, _init37, _a37;
|
|
106865
107709
|
_SzDemoViewSettings_decorators = [t4("sz-demo-view-settings")];
|
|
106866
|
-
var SzDemoViewSettings = class extends (
|
|
107710
|
+
var SzDemoViewSettings = class extends (_a37 = DeesElement) {
|
|
106867
107711
|
appui = null;
|
|
106868
107712
|
async onActivate(context2) {
|
|
106869
107713
|
this.appui = context2.appui;
|
|
@@ -106970,21 +107814,21 @@ var SzDemoViewSettings = class extends (_a35 = DeesElement) {
|
|
|
106970
107814
|
`;
|
|
106971
107815
|
}
|
|
106972
107816
|
};
|
|
106973
|
-
|
|
106974
|
-
SzDemoViewSettings = __decorateElement(
|
|
106975
|
-
__runInitializers(
|
|
107817
|
+
_init37 = __decoratorStart(_a37);
|
|
107818
|
+
SzDemoViewSettings = __decorateElement(_init37, 0, "SzDemoViewSettings", _SzDemoViewSettings_decorators, SzDemoViewSettings);
|
|
107819
|
+
__runInitializers(_init37, 1, SzDemoViewSettings);
|
|
106976
107820
|
|
|
106977
107821
|
// ts_web/elements/sz-demo-view-mta.ts
|
|
106978
107822
|
init_dist_ts29();
|
|
106979
|
-
var _currentDirectionFilter_dec, _selectedEmail_dec, _currentView_dec3,
|
|
107823
|
+
var _currentDirectionFilter_dec, _selectedEmail_dec, _currentView_dec3, _a38, _SzDemoViewMta_decorators, _init38, _currentView3, _selectedEmail, _currentDirectionFilter;
|
|
106980
107824
|
_SzDemoViewMta_decorators = [t4("sz-demo-view-mta")];
|
|
106981
|
-
var SzDemoViewMta = class extends (
|
|
107825
|
+
var SzDemoViewMta = class extends (_a38 = DeesElement, _currentView_dec3 = [r5()], _selectedEmail_dec = [r5()], _currentDirectionFilter_dec = [r5()], _a38) {
|
|
106982
107826
|
constructor() {
|
|
106983
107827
|
super(...arguments);
|
|
106984
107828
|
__publicField(this, "appui", null);
|
|
106985
|
-
__privateAdd(this, _currentView3, __runInitializers(
|
|
106986
|
-
__privateAdd(this, _selectedEmail, __runInitializers(
|
|
106987
|
-
__privateAdd(this, _currentDirectionFilter, __runInitializers(
|
|
107829
|
+
__privateAdd(this, _currentView3, __runInitializers(_init38, 8, this, "list")), __runInitializers(_init38, 11, this);
|
|
107830
|
+
__privateAdd(this, _selectedEmail, __runInitializers(_init38, 12, this, null)), __runInitializers(_init38, 15, this);
|
|
107831
|
+
__privateAdd(this, _currentDirectionFilter, __runInitializers(_init38, 16, this, "all")), __runInitializers(_init38, 19, this);
|
|
106988
107832
|
__publicField(this, "demoEmails", [
|
|
106989
107833
|
{ id: "1", direction: "outbound", status: "delivered", from: "noreply@serve.zone", to: "user@example.com", subject: "Welcome to serve.zone", timestamp: "2024-01-15 14:30:22", messageId: "<abc123@serve.zone>", size: "12.4 KB" },
|
|
106990
107834
|
{ id: "2", direction: "outbound", status: "bounced", from: "alerts@serve.zone", to: "invalid@nowhere.test", subject: "Service Alert: CPU Usage High", timestamp: "2024-01-15 14:28:10", messageId: "<def456@serve.zone>", size: "8.2 KB" },
|
|
@@ -107277,14 +108121,14 @@ var SzDemoViewMta = class extends (_a36 = DeesElement, _currentView_dec3 = [r5()
|
|
|
107277
108121
|
}
|
|
107278
108122
|
}
|
|
107279
108123
|
};
|
|
107280
|
-
|
|
108124
|
+
_init38 = __decoratorStart(_a38);
|
|
107281
108125
|
_currentView3 = new WeakMap();
|
|
107282
108126
|
_selectedEmail = new WeakMap();
|
|
107283
108127
|
_currentDirectionFilter = new WeakMap();
|
|
107284
|
-
__decorateElement(
|
|
107285
|
-
__decorateElement(
|
|
107286
|
-
__decorateElement(
|
|
107287
|
-
SzDemoViewMta = __decorateElement(
|
|
108128
|
+
__decorateElement(_init38, 4, "currentView", _currentView_dec3, SzDemoViewMta, _currentView3);
|
|
108129
|
+
__decorateElement(_init38, 4, "selectedEmail", _selectedEmail_dec, SzDemoViewMta, _selectedEmail);
|
|
108130
|
+
__decorateElement(_init38, 4, "currentDirectionFilter", _currentDirectionFilter_dec, SzDemoViewMta, _currentDirectionFilter);
|
|
108131
|
+
SzDemoViewMta = __decorateElement(_init38, 0, "SzDemoViewMta", _SzDemoViewMta_decorators, SzDemoViewMta);
|
|
107288
108132
|
__publicField(SzDemoViewMta, "styles", [
|
|
107289
108133
|
cssManager.defaultStyles,
|
|
107290
108134
|
i`
|
|
@@ -107297,7 +108141,348 @@ __publicField(SzDemoViewMta, "styles", [
|
|
|
107297
108141
|
}
|
|
107298
108142
|
`
|
|
107299
108143
|
]);
|
|
107300
|
-
__runInitializers(
|
|
108144
|
+
__runInitializers(_init38, 1, SzDemoViewMta);
|
|
108145
|
+
|
|
108146
|
+
// ts_web/elements/sz-demo-view-routes.ts
|
|
108147
|
+
init_dist_ts29();
|
|
108148
|
+
var _currentTab_dec3, _a39, _SzDemoViewRoutes_decorators, _init39, _currentTab3;
|
|
108149
|
+
_SzDemoViewRoutes_decorators = [t4("sz-demo-view-routes")];
|
|
108150
|
+
var SzDemoViewRoutes = class extends (_a39 = DeesElement, _currentTab_dec3 = [r5()], _a39) {
|
|
108151
|
+
constructor() {
|
|
108152
|
+
super(...arguments);
|
|
108153
|
+
__publicField(this, "appui", null);
|
|
108154
|
+
__privateAdd(this, _currentTab3, __runInitializers(_init39, 8, this, "all")), __runInitializers(_init39, 11, this);
|
|
108155
|
+
__publicField(this, "demoRoutes", [
|
|
108156
|
+
// 1. HTTPS with TLS termination + auto cert
|
|
108157
|
+
{
|
|
108158
|
+
id: "route-1",
|
|
108159
|
+
name: "Web Frontend",
|
|
108160
|
+
description: "Main website with TLS termination and automatic certificates",
|
|
108161
|
+
enabled: true,
|
|
108162
|
+
priority: 10,
|
|
108163
|
+
tags: ["web", "https", "production"],
|
|
108164
|
+
match: {
|
|
108165
|
+
ports: 443,
|
|
108166
|
+
domains: ["serve.zone", "www.serve.zone"],
|
|
108167
|
+
protocol: "http"
|
|
108168
|
+
},
|
|
108169
|
+
action: {
|
|
108170
|
+
type: "forward",
|
|
108171
|
+
targets: [{ host: "10.0.0.10", port: 3e3 }],
|
|
108172
|
+
tls: { mode: "terminate", certificate: "auto" }
|
|
108173
|
+
}
|
|
108174
|
+
},
|
|
108175
|
+
// 2. HTTP to HTTPS redirect
|
|
108176
|
+
{
|
|
108177
|
+
id: "route-2",
|
|
108178
|
+
name: "HTTP Redirect",
|
|
108179
|
+
description: "Redirects all HTTP traffic to HTTPS",
|
|
108180
|
+
enabled: true,
|
|
108181
|
+
priority: 100,
|
|
108182
|
+
tags: ["web", "http", "redirect"],
|
|
108183
|
+
match: {
|
|
108184
|
+
ports: 80,
|
|
108185
|
+
domains: ["serve.zone", "www.serve.zone"],
|
|
108186
|
+
protocol: "http"
|
|
108187
|
+
},
|
|
108188
|
+
action: {
|
|
108189
|
+
type: "socket-handler"
|
|
108190
|
+
}
|
|
108191
|
+
},
|
|
108192
|
+
// 3. Email SMTP route
|
|
108193
|
+
{
|
|
108194
|
+
id: "route-3",
|
|
108195
|
+
name: "SMTP Inbound",
|
|
108196
|
+
description: "Inbound email relay for serve.zone domain",
|
|
108197
|
+
enabled: true,
|
|
108198
|
+
tags: ["email", "smtp", "production"],
|
|
108199
|
+
match: {
|
|
108200
|
+
ports: 25,
|
|
108201
|
+
domains: "mail.serve.zone"
|
|
108202
|
+
},
|
|
108203
|
+
action: {
|
|
108204
|
+
type: "forward",
|
|
108205
|
+
targets: [{ host: "10.0.1.5", port: 25 }],
|
|
108206
|
+
tls: { mode: "terminate", certificate: "auto" }
|
|
108207
|
+
}
|
|
108208
|
+
},
|
|
108209
|
+
// 4. API gateway with path matching, rate limiting, CORS
|
|
108210
|
+
{
|
|
108211
|
+
id: "route-4",
|
|
108212
|
+
name: "API Gateway",
|
|
108213
|
+
description: "API gateway with rate limiting, CORS headers, and load balancing",
|
|
108214
|
+
enabled: true,
|
|
108215
|
+
priority: 20,
|
|
108216
|
+
tags: ["web", "api", "https", "production"],
|
|
108217
|
+
match: {
|
|
108218
|
+
ports: 443,
|
|
108219
|
+
domains: "api.serve.zone",
|
|
108220
|
+
path: "/v2/*",
|
|
108221
|
+
protocol: "http"
|
|
108222
|
+
},
|
|
108223
|
+
action: {
|
|
108224
|
+
type: "forward",
|
|
108225
|
+
targets: [
|
|
108226
|
+
{ host: ["10.0.0.20", "10.0.0.21", "10.0.0.22"], port: 8080 }
|
|
108227
|
+
],
|
|
108228
|
+
tls: { mode: "terminate", certificate: "auto" },
|
|
108229
|
+
loadBalancing: { algorithm: "round-robin" }
|
|
108230
|
+
},
|
|
108231
|
+
security: {
|
|
108232
|
+
rateLimit: { enabled: true, maxRequests: 200, window: 60 },
|
|
108233
|
+
maxConnections: 5e3
|
|
108234
|
+
},
|
|
108235
|
+
headers: {
|
|
108236
|
+
response: {
|
|
108237
|
+
"Access-Control-Allow-Origin": "*",
|
|
108238
|
+
"X-Request-Id": "{{requestId}}"
|
|
108239
|
+
}
|
|
108240
|
+
}
|
|
108241
|
+
},
|
|
108242
|
+
// 5. WebSocket route
|
|
108243
|
+
{
|
|
108244
|
+
id: "route-5",
|
|
108245
|
+
name: "WebSocket Realtime",
|
|
108246
|
+
description: "Real-time WebSocket connections for live updates",
|
|
108247
|
+
enabled: true,
|
|
108248
|
+
tags: ["web", "https", "websocket"],
|
|
108249
|
+
match: {
|
|
108250
|
+
ports: 443,
|
|
108251
|
+
domains: "ws.serve.zone",
|
|
108252
|
+
path: "/ws/*",
|
|
108253
|
+
protocol: "http"
|
|
108254
|
+
},
|
|
108255
|
+
action: {
|
|
108256
|
+
type: "forward",
|
|
108257
|
+
targets: [{ host: "10.0.0.30", port: 9090 }],
|
|
108258
|
+
tls: { mode: "terminate", certificate: "auto" },
|
|
108259
|
+
websocket: { enabled: true }
|
|
108260
|
+
}
|
|
108261
|
+
},
|
|
108262
|
+
// 6. Wildcard domain route
|
|
108263
|
+
{
|
|
108264
|
+
id: "route-6",
|
|
108265
|
+
name: "Tenant Wildcard",
|
|
108266
|
+
description: "Multi-tenant wildcard routing for customer subdomains",
|
|
108267
|
+
enabled: true,
|
|
108268
|
+
priority: 50,
|
|
108269
|
+
tags: ["web", "https", "multi-tenant"],
|
|
108270
|
+
match: {
|
|
108271
|
+
ports: 443,
|
|
108272
|
+
domains: "*.customers.serve.zone",
|
|
108273
|
+
protocol: "http"
|
|
108274
|
+
},
|
|
108275
|
+
action: {
|
|
108276
|
+
type: "forward",
|
|
108277
|
+
targets: [{ host: "10.0.0.40", port: 8080 }],
|
|
108278
|
+
tls: { mode: "terminate", certificate: "auto" }
|
|
108279
|
+
},
|
|
108280
|
+
security: {
|
|
108281
|
+
ipAllowList: ["10.0.0.0/8", "172.16.0.0/12"]
|
|
108282
|
+
}
|
|
108283
|
+
},
|
|
108284
|
+
// 7. Load-balanced route with health check
|
|
108285
|
+
{
|
|
108286
|
+
id: "route-7",
|
|
108287
|
+
name: "Microservices LB",
|
|
108288
|
+
description: "Load-balanced microservices backend with IP-hash affinity",
|
|
108289
|
+
enabled: true,
|
|
108290
|
+
tags: ["web", "https", "production"],
|
|
108291
|
+
match: {
|
|
108292
|
+
ports: [443, 8443],
|
|
108293
|
+
domains: "services.serve.zone",
|
|
108294
|
+
protocol: "http"
|
|
108295
|
+
},
|
|
108296
|
+
action: {
|
|
108297
|
+
type: "forward",
|
|
108298
|
+
targets: [
|
|
108299
|
+
{ host: ["10.0.2.1", "10.0.2.2", "10.0.2.3", "10.0.2.4"], port: 3e3 }
|
|
108300
|
+
],
|
|
108301
|
+
tls: { mode: "terminate-and-reencrypt", certificate: "auto" },
|
|
108302
|
+
loadBalancing: { algorithm: "ip-hash" }
|
|
108303
|
+
}
|
|
108304
|
+
},
|
|
108305
|
+
// 8. DNS-over-HTTPS route
|
|
108306
|
+
{
|
|
108307
|
+
id: "route-8",
|
|
108308
|
+
name: "DNS over HTTPS",
|
|
108309
|
+
description: "DNS-over-HTTPS resolver endpoint",
|
|
108310
|
+
enabled: true,
|
|
108311
|
+
tags: ["dns", "https"],
|
|
108312
|
+
match: {
|
|
108313
|
+
ports: 443,
|
|
108314
|
+
domains: "dns.serve.zone",
|
|
108315
|
+
path: "/dns-query",
|
|
108316
|
+
protocol: "http"
|
|
108317
|
+
},
|
|
108318
|
+
action: {
|
|
108319
|
+
type: "forward",
|
|
108320
|
+
targets: [{ host: "10.0.3.1", port: 8053 }],
|
|
108321
|
+
tls: { mode: "terminate", certificate: "auto" }
|
|
108322
|
+
}
|
|
108323
|
+
},
|
|
108324
|
+
// 9. NFTables high-performance route
|
|
108325
|
+
{
|
|
108326
|
+
id: "route-9",
|
|
108327
|
+
name: "High-Perf TCP Proxy",
|
|
108328
|
+
description: "NFTables-accelerated TCP proxy for game servers",
|
|
108329
|
+
enabled: true,
|
|
108330
|
+
tags: ["tcp", "nftables", "production"],
|
|
108331
|
+
match: {
|
|
108332
|
+
ports: [{ from: 27e3, to: 27050 }],
|
|
108333
|
+
protocol: "tcp"
|
|
108334
|
+
},
|
|
108335
|
+
action: {
|
|
108336
|
+
type: "forward",
|
|
108337
|
+
targets: [{ host: "10.0.4.1", port: "preserve" }],
|
|
108338
|
+
forwardingEngine: "nftables"
|
|
108339
|
+
}
|
|
108340
|
+
},
|
|
108341
|
+
// 10. Disabled maintenance route
|
|
108342
|
+
{
|
|
108343
|
+
id: "route-10",
|
|
108344
|
+
name: "Legacy Admin Panel",
|
|
108345
|
+
description: "Deprecated admin panel \u2014 disabled for maintenance",
|
|
108346
|
+
enabled: false,
|
|
108347
|
+
tags: ["web", "https", "deprecated"],
|
|
108348
|
+
match: {
|
|
108349
|
+
ports: 443,
|
|
108350
|
+
domains: "admin-old.serve.zone",
|
|
108351
|
+
protocol: "http"
|
|
108352
|
+
},
|
|
108353
|
+
action: {
|
|
108354
|
+
type: "socket-handler"
|
|
108355
|
+
},
|
|
108356
|
+
security: {
|
|
108357
|
+
ipBlockList: ["0.0.0.0/0"]
|
|
108358
|
+
}
|
|
108359
|
+
}
|
|
108360
|
+
]);
|
|
108361
|
+
}
|
|
108362
|
+
get filteredRoutes() {
|
|
108363
|
+
if (this.currentTab === "all") return this.demoRoutes;
|
|
108364
|
+
if (this.currentTab === "https") {
|
|
108365
|
+
return this.demoRoutes.filter(
|
|
108366
|
+
(r11) => r11.tags?.some((t9) => ["web", "https", "http"].includes(t9))
|
|
108367
|
+
);
|
|
108368
|
+
}
|
|
108369
|
+
if (this.currentTab === "email") {
|
|
108370
|
+
return this.demoRoutes.filter(
|
|
108371
|
+
(r11) => r11.tags?.some((t9) => ["email", "smtp"].includes(t9))
|
|
108372
|
+
);
|
|
108373
|
+
}
|
|
108374
|
+
if (this.currentTab === "dns") {
|
|
108375
|
+
return this.demoRoutes.filter(
|
|
108376
|
+
(r11) => r11.tags?.some((t9) => ["dns"].includes(t9))
|
|
108377
|
+
);
|
|
108378
|
+
}
|
|
108379
|
+
return this.demoRoutes;
|
|
108380
|
+
}
|
|
108381
|
+
async onActivate(context2) {
|
|
108382
|
+
this.appui = context2.appui;
|
|
108383
|
+
this.appui.setContentTabs([
|
|
108384
|
+
{
|
|
108385
|
+
key: "All Routes",
|
|
108386
|
+
action: () => {
|
|
108387
|
+
this.currentTab = "all";
|
|
108388
|
+
this.updateSecondaryMenu();
|
|
108389
|
+
}
|
|
108390
|
+
},
|
|
108391
|
+
{
|
|
108392
|
+
key: "HTTP/S",
|
|
108393
|
+
action: () => {
|
|
108394
|
+
this.currentTab = "https";
|
|
108395
|
+
this.updateSecondaryMenu();
|
|
108396
|
+
}
|
|
108397
|
+
},
|
|
108398
|
+
{
|
|
108399
|
+
key: "Email",
|
|
108400
|
+
action: () => {
|
|
108401
|
+
this.currentTab = "email";
|
|
108402
|
+
this.updateSecondaryMenu();
|
|
108403
|
+
}
|
|
108404
|
+
},
|
|
108405
|
+
{
|
|
108406
|
+
key: "DNS",
|
|
108407
|
+
action: () => {
|
|
108408
|
+
this.currentTab = "dns";
|
|
108409
|
+
this.updateSecondaryMenu();
|
|
108410
|
+
}
|
|
108411
|
+
}
|
|
108412
|
+
]);
|
|
108413
|
+
this.updateSecondaryMenu();
|
|
108414
|
+
}
|
|
108415
|
+
updateSecondaryMenu() {
|
|
108416
|
+
if (!this.appui) return;
|
|
108417
|
+
const total = this.demoRoutes.length;
|
|
108418
|
+
const active = this.demoRoutes.filter((r11) => r11.enabled !== false).length;
|
|
108419
|
+
const forwardCount = this.demoRoutes.filter((r11) => r11.action.type === "forward").length;
|
|
108420
|
+
this.appui.setSecondaryMenu({
|
|
108421
|
+
heading: "Routes",
|
|
108422
|
+
groups: [
|
|
108423
|
+
{
|
|
108424
|
+
name: "Actions",
|
|
108425
|
+
items: [
|
|
108426
|
+
{
|
|
108427
|
+
type: "action",
|
|
108428
|
+
key: "Refresh",
|
|
108429
|
+
iconName: "lucide:RefreshCw",
|
|
108430
|
+
action: () => {
|
|
108431
|
+
console.log("Refresh routes");
|
|
108432
|
+
}
|
|
108433
|
+
},
|
|
108434
|
+
{
|
|
108435
|
+
type: "action",
|
|
108436
|
+
key: "Add Route",
|
|
108437
|
+
iconName: "lucide:Plus",
|
|
108438
|
+
action: () => {
|
|
108439
|
+
console.log("Add route");
|
|
108440
|
+
}
|
|
108441
|
+
}
|
|
108442
|
+
]
|
|
108443
|
+
},
|
|
108444
|
+
{
|
|
108445
|
+
name: "Statistics",
|
|
108446
|
+
items: [
|
|
108447
|
+
{ type: "header", label: `${total} Total Routes` },
|
|
108448
|
+
{ type: "header", label: `${active} Active` },
|
|
108449
|
+
{ type: "header", label: `${forwardCount} Forward` },
|
|
108450
|
+
{ type: "header", label: `${total - forwardCount} Socket Handler` }
|
|
108451
|
+
]
|
|
108452
|
+
}
|
|
108453
|
+
]
|
|
108454
|
+
});
|
|
108455
|
+
}
|
|
108456
|
+
onDeactivate() {
|
|
108457
|
+
}
|
|
108458
|
+
render() {
|
|
108459
|
+
return b2`
|
|
108460
|
+
<sz-route-list-view
|
|
108461
|
+
.routes=${this.filteredRoutes}
|
|
108462
|
+
@route-click=${(e11) => {
|
|
108463
|
+
console.log("Route clicked:", e11.detail.name);
|
|
108464
|
+
}}
|
|
108465
|
+
></sz-route-list-view>
|
|
108466
|
+
`;
|
|
108467
|
+
}
|
|
108468
|
+
};
|
|
108469
|
+
_init39 = __decoratorStart(_a39);
|
|
108470
|
+
_currentTab3 = new WeakMap();
|
|
108471
|
+
__decorateElement(_init39, 4, "currentTab", _currentTab_dec3, SzDemoViewRoutes, _currentTab3);
|
|
108472
|
+
SzDemoViewRoutes = __decorateElement(_init39, 0, "SzDemoViewRoutes", _SzDemoViewRoutes_decorators, SzDemoViewRoutes);
|
|
108473
|
+
__publicField(SzDemoViewRoutes, "styles", [
|
|
108474
|
+
cssManager.defaultStyles,
|
|
108475
|
+
i`
|
|
108476
|
+
:host {
|
|
108477
|
+
display: block;
|
|
108478
|
+
padding: 24px;
|
|
108479
|
+
height: 100%;
|
|
108480
|
+
overflow-y: auto;
|
|
108481
|
+
box-sizing: border-box;
|
|
108482
|
+
}
|
|
108483
|
+
`
|
|
108484
|
+
]);
|
|
108485
|
+
__runInitializers(_init39, 1, SzDemoViewRoutes);
|
|
107301
108486
|
|
|
107302
108487
|
// ts_web/pages/index.ts
|
|
107303
108488
|
var pages_exports = {};
|
|
@@ -111015,9 +112200,9 @@ var DeesAppuiBar = (() => {
|
|
|
111015
112200
|
|
|
111016
112201
|
// node_modules/.pnpm/@design.estate+dees-catalog@3.43.0_@tiptap+pm@2.27.2/node_modules/@design.estate/dees-catalog/dist_ts_web/elements/00group-appui/dees-appui-bottombar/dees-appui-bottombar.demo.js
|
|
111017
112202
|
init_dist_ts29();
|
|
111018
|
-
var
|
|
112203
|
+
var _a40;
|
|
111019
112204
|
var demoFunc5 = () => {
|
|
111020
|
-
return b2(
|
|
112205
|
+
return b2(_a40 || (_a40 = __template([`
|
|
111021
112206
|
<dees-demowrapper>
|
|
111022
112207
|
<style>
|
|
111023
112208
|
.demo-container {
|
|
@@ -112069,7 +113254,7 @@ var DeesPanel = (() => {
|
|
|
112069
113254
|
|
|
112070
113255
|
// node_modules/.pnpm/@design.estate+dees-catalog@3.43.0_@tiptap+pm@2.27.2/node_modules/@design.estate/dees-catalog/dist_ts_web/elements/00group-dataview/dees-statsgrid/dees-statsgrid.demo.js
|
|
112071
113256
|
init_dist_ts29();
|
|
112072
|
-
var
|
|
113257
|
+
var _a41;
|
|
112073
113258
|
var generateCpuCores = (count2) => {
|
|
112074
113259
|
return Array.from({ length: count2 }, (_4, i11) => ({
|
|
112075
113260
|
id: i11,
|
|
@@ -112078,7 +113263,7 @@ var generateCpuCores = (count2) => {
|
|
|
112078
113263
|
}));
|
|
112079
113264
|
};
|
|
112080
113265
|
var demoFunc7 = () => {
|
|
112081
|
-
return b2(
|
|
113266
|
+
return b2(_a41 || (_a41 = __template(["\n <dees-demowrapper>\n <style>\n ", '\n </style>\n \n <div class="demo-container">\n <dees-panel .title=', " .subtitle=", ">\n <dees-statsgrid\n .tiles=", "\n .gridActions=", "\n .minTileWidth=", "\n .gap=", '\n ></dees-statsgrid>\n \n <div id="action-output" style="margin-top: 16px; padding: 12px; background: ', "; border-radius: 6px; font-size: 14px; font-family: monospace; color: ", ';">\n <em>Click on tile actions or grid actions to see the result...</em>\n </div>\n </dees-panel>\n \n <dees-panel .title=', " .subtitle=", ">\n <dees-statsgrid\n .tiles=", "\n .minTileWidth=", "\n .gap=", '\n ></dees-statsgrid>\n \n <div class="tile-config">\n <div class="config-section">\n <div class="config-title">Configuration Options</div>\n <div class="config-description">\n Each tile type supports different properties:\n <ul style="margin: 8px 0; padding-left: 20px;">\n <li><strong>Number:</strong> value, unit, color, description</li>\n <li><strong>Gauge:</strong> value, unit, gaugeOptions (min, max, thresholds)</li>\n <li><strong>Percentage:</strong> value (0-100), color, description</li>\n <li><strong>Trend:</strong> value, unit, trendData array, description</li>\n <li><strong>Text:</strong> value (string), color, description</li>\n </ul>\n </div>\n </div>\n </div>\n </dees-panel>\n \n <dees-panel .title=', " .subtitle=", '>\n <h4 style="margin: 0 0 16px 0; font-size: 16px; font-weight: 600;">Compact Layout (180px tiles)</h4>\n <dees-statsgrid\n .tiles=', "\n .minTileWidth=", "\n .gap=", '\n ></dees-statsgrid>\n \n <h4 style="margin: 24px 0 16px 0; font-size: 16px; font-weight: 600;">Spacious Layout (320px tiles)</h4>\n <dees-statsgrid\n .tiles=', "\n .minTileWidth=", "\n .gap=", "\n ></dees-statsgrid>\n </dees-panel>\n \n <dees-panel .title=", " .subtitle=", '>\n <dees-statsgrid\n id="cpu-cores-grid"\n .tiles=', "\n .gridActions=", "\n .minTileWidth=", "\n .gap=", "\n ></dees-statsgrid>\n </dees-panel>\n\n <dees-panel .title=", " .subtitle=", '>\n <dees-statsgrid\n id="interactive-grid"\n .tiles=', "\n .gridActions=", "\n .minTileWidth=", "\n .gap=", "\n ></dees-statsgrid>\n </dees-panel>\n \n <dees-panel .title=", " .subtitle=", '>\n <div class="code-block">', "</div>\n </dees-panel>\n\n <dees-panel .title=", " .subtitle=", ">\n <dees-statsgrid\n .tiles=", "\n .minTileWidth=", "\n .gap=", `
|
|
112082
113267
|
></dees-statsgrid>
|
|
112083
113268
|
|
|
112084
113269
|
<div class="tile-config">
|
|
@@ -144975,8 +146160,8 @@ var DeesInputRichtext = (() => {
|
|
|
144975
146160
|
|
|
144976
146161
|
// node_modules/.pnpm/@design.estate+dees-catalog@3.43.0_@tiptap+pm@2.27.2/node_modules/@design.estate/dees-catalog/dist_ts_web/elements/00group-input/dees-input-tags/dees-input-tags.demo.js
|
|
144977
146162
|
init_dist_ts29();
|
|
144978
|
-
var
|
|
144979
|
-
var demoFunc42 = () => b2(
|
|
146163
|
+
var _a42;
|
|
146164
|
+
var demoFunc42 = () => b2(_a42 || (_a42 = __template(["\n <dees-demowrapper>\n <style>\n ", '\n </style>\n \n <div class="demo-container">\n <dees-panel .title=', " .subtitle=", ">\n <dees-input-tags\n .label=", "\n .placeholder=", "\n .value=", "\n .description=", "\n ></dees-input-tags>\n </dees-panel>\n\n <dees-panel .title=", " .subtitle=", ">\n <dees-input-tags\n .label=", "\n .placeholder=", "\n .suggestions=", "\n .value=", "\n .description=", "\n ></dees-input-tags>\n </dees-panel>\n\n <dees-panel .title=", " .subtitle=", '>\n <div class="grid-layout">\n <dees-input-tags\n .label=', "\n .placeholder=", "\n .maxTags=", "\n .value=", "\n .description=", "\n ></dees-input-tags>\n \n <dees-input-tags\n .label=", "\n .placeholder=", "\n .maxTags=", "\n .suggestions=", "\n .value=", "\n .description=", "\n ></dees-input-tags>\n </div>\n </dees-panel>\n\n <dees-panel .title=", " .subtitle=", ">\n <dees-input-tags\n .label=", "\n .placeholder=", "\n .required=", "\n .description=", "\n ></dees-input-tags>\n </dees-panel>\n\n <dees-panel .title=", " .subtitle=", ">\n <dees-input-tags\n .label=", "\n .value=", "\n .disabled=", "\n .description=", "\n ></dees-input-tags>\n </dees-panel>\n\n <dees-panel .title=", " .subtitle=", ">\n <dees-form>\n <dees-input-text\n .label=", "\n .placeholder=", "\n .required=", "\n .key=", '\n ></dees-input-text>\n \n <div class="grid-layout">\n <dees-input-tags\n .label=', "\n .placeholder=", "\n .required=", "\n .key=", "\n .suggestions=", "\n ></dees-input-tags>\n \n <dees-input-tags\n .label=", "\n .placeholder=", "\n .key=", "\n .maxTags=", "\n .suggestions=", "\n ></dees-input-tags>\n </div>\n \n <dees-input-text\n .label=", "\n .inputType=", "\n .placeholder=", "\n .key=", "\n ></dees-input-text>\n \n <dees-form-submit .text=", "></dees-form-submit>\n </dees-form>\n </dees-panel>\n\n <dees-panel .title=", " .subtitle=", '>\n <dees-input-tags\n id="interactive-tags"\n .label=', "\n .placeholder=", "\n .suggestions=", "\n @change=", `
|
|
144980
146165
|
></dees-input-tags>
|
|
144981
146166
|
|
|
144982
146167
|
<div class="tag-preview" id="tags-preview">
|
|
@@ -177248,9 +178433,9 @@ init_group_runtime();
|
|
|
177248
178433
|
|
|
177249
178434
|
// ts_web/pages/sz-demo-app-shell.ts
|
|
177250
178435
|
init_dist_ts29();
|
|
177251
|
-
var _SzDemoAppShell_decorators,
|
|
178436
|
+
var _SzDemoAppShell_decorators, _init40, _a43;
|
|
177252
178437
|
_SzDemoAppShell_decorators = [t4("sz-demo-app-shell")];
|
|
177253
|
-
var SzDemoAppShell = class extends (
|
|
178438
|
+
var SzDemoAppShell = class extends (_a43 = DeesElement) {
|
|
177254
178439
|
static styles = [
|
|
177255
178440
|
cssManager.defaultStyles,
|
|
177256
178441
|
i`
|
|
@@ -177402,6 +178587,12 @@ var SzDemoAppShell = class extends (_a40 = DeesElement) {
|
|
|
177402
178587
|
iconName: "lucide:Mail",
|
|
177403
178588
|
content: "sz-demo-view-mta"
|
|
177404
178589
|
},
|
|
178590
|
+
{
|
|
178591
|
+
id: "routes",
|
|
178592
|
+
name: "Routes",
|
|
178593
|
+
iconName: "lucide:Route",
|
|
178594
|
+
content: "sz-demo-view-routes"
|
|
178595
|
+
},
|
|
177405
178596
|
{
|
|
177406
178597
|
id: "settings",
|
|
177407
178598
|
name: "Settings",
|
|
@@ -177417,7 +178608,7 @@ var SzDemoAppShell = class extends (_a40 = DeesElement) {
|
|
|
177417
178608
|
},
|
|
177418
178609
|
{
|
|
177419
178610
|
name: "Infrastructure",
|
|
177420
|
-
views: ["services", "network", "registries", "mta"]
|
|
178611
|
+
views: ["services", "network", "registries", "mta", "routes"]
|
|
177421
178612
|
},
|
|
177422
178613
|
{
|
|
177423
178614
|
name: "Administration",
|
|
@@ -177449,9 +178640,9 @@ var SzDemoAppShell = class extends (_a40 = DeesElement) {
|
|
|
177449
178640
|
]);
|
|
177450
178641
|
}
|
|
177451
178642
|
};
|
|
177452
|
-
|
|
177453
|
-
SzDemoAppShell = __decorateElement(
|
|
177454
|
-
__runInitializers(
|
|
178643
|
+
_init40 = __decoratorStart(_a43);
|
|
178644
|
+
SzDemoAppShell = __decorateElement(_init40, 0, "SzDemoAppShell", _SzDemoAppShell_decorators, SzDemoAppShell);
|
|
178645
|
+
__runInitializers(_init40, 1, SzDemoAppShell);
|
|
177455
178646
|
|
|
177456
178647
|
// html/index.ts
|
|
177457
178648
|
setupWccTools({
|