@serve.zone/dcrouter 16.1.0 → 16.2.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.
Files changed (42) hide show
  1. package/deno.json +1 -1
  2. package/dist_serve/bundle.js +11786 -7664
  3. package/dist_ts/00_commitinfo_data.js +1 -1
  4. package/dist_ts/config/classes.route-config-manager.d.ts +24 -4
  5. package/dist_ts/config/classes.route-config-manager.js +195 -34
  6. package/dist_ts/config/helpers.http-redirects.js +21 -12
  7. package/dist_ts/config/helpers.special-forwards.d.ts +14 -0
  8. package/dist_ts/config/helpers.special-forwards.js +85 -0
  9. package/dist_ts/opsserver/handlers/gatewayclient.handler.d.ts +1 -0
  10. package/dist_ts/opsserver/handlers/gatewayclient.handler.js +56 -9
  11. package/dist_ts/opsserver/handlers/route-management.handler.js +36 -1
  12. package/dist_ts_interfaces/data/route-management.d.ts +19 -1
  13. package/dist_ts_interfaces/data/route-management.js +5 -1
  14. package/dist_ts_interfaces/requests/route-management.d.ts +50 -1
  15. package/dist_ts_web/00_commitinfo_data.js +1 -1
  16. package/dist_ts_web/appstate/routes.d.ts +10 -0
  17. package/dist_ts_web/appstate/routes.js +67 -1
  18. package/dist_ts_web/elements/network/ops-view-redirects.d.ts +1 -0
  19. package/dist_ts_web/elements/network/ops-view-redirects.js +12 -4
  20. package/dist_ts_web/elements/network/ops-view-routes.d.ts +20 -1
  21. package/dist_ts_web/elements/network/ops-view-routes.js +182 -52
  22. package/dist_ts_web/elements/network/ops-view-special-forwards.d.ts +12 -0
  23. package/dist_ts_web/elements/network/ops-view-special-forwards.js +375 -0
  24. package/dist_ts_web/elements/ops-dashboard.js +1 -3
  25. package/dist_ts_web/router.js +10 -2
  26. package/package.json +7 -7
  27. package/readme.md +7 -3
  28. package/ts/00_commitinfo_data.ts +1 -1
  29. package/ts/config/classes.route-config-manager.ts +271 -32
  30. package/ts/config/helpers.http-redirects.ts +24 -16
  31. package/ts/config/helpers.special-forwards.ts +108 -0
  32. package/ts/opsserver/handlers/gatewayclient.handler.ts +55 -8
  33. package/ts/opsserver/handlers/route-management.handler.ts +59 -0
  34. package/ts_apiclient/readme.md +2 -2
  35. package/ts_web/00_commitinfo_data.ts +1 -1
  36. package/ts_web/appstate/routes.ts +84 -0
  37. package/ts_web/elements/network/ops-view-redirects.ts +5 -1
  38. package/ts_web/elements/network/ops-view-routes.ts +175 -31
  39. package/ts_web/elements/network/ops-view-special-forwards.ts +352 -0
  40. package/ts_web/elements/ops-dashboard.ts +0 -2
  41. package/ts_web/readme.md +9 -0
  42. package/ts_web/router.ts +10 -1
@@ -36,6 +36,8 @@ import * as appstate from '../../appstate.js';
36
36
  import * as interfaces from '../../../dist_ts_interfaces/index.js';
37
37
  import { viewHostCss } from '../shared/css.js';
38
38
  import {} from '@design.estate/dees-catalog';
39
+ import './ops-view-redirects.js';
40
+ import './ops-view-special-forwards.js';
39
41
  import { DeesElement, css, cssManager, customElement, html, state, } from '@design.estate/dees-element';
40
42
  // TLS dropdown options shared by create and edit dialogs
41
43
  const tlsModeOptions = [
@@ -307,9 +309,12 @@ let OpsViewRoutes = (() => {
307
309
  let _classExtraInitializers = [];
308
310
  let _classThis;
309
311
  let _classSuper = DeesElement;
310
- let _routeFilter_decorators;
311
- let _routeFilter_initializers = [];
312
- let _routeFilter_extraInitializers = [];
312
+ let _activeSection_decorators;
313
+ let _activeSection_initializers = [];
314
+ let _activeSection_extraInitializers = [];
315
+ let _ownerFilter_decorators;
316
+ let _ownerFilter_initializers = [];
317
+ let _ownerFilter_extraInitializers = [];
313
318
  let _routeState_decorators;
314
319
  let _routeState_initializers = [];
315
320
  let _routeState_extraInitializers = [];
@@ -320,20 +325,56 @@ let OpsViewRoutes = (() => {
320
325
  static { _classThis = this; }
321
326
  static {
322
327
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
323
- _routeFilter_decorators = [state()];
328
+ _activeSection_decorators = [state()];
329
+ _ownerFilter_decorators = [state()];
324
330
  _routeState_decorators = [state()];
325
331
  _profilesTargetsState_decorators = [state()];
326
- __esDecorate(this, null, _routeFilter_decorators, { kind: "accessor", name: "routeFilter", static: false, private: false, access: { has: obj => "routeFilter" in obj, get: obj => obj.routeFilter, set: (obj, value) => { obj.routeFilter = value; } }, metadata: _metadata }, _routeFilter_initializers, _routeFilter_extraInitializers);
332
+ __esDecorate(this, null, _activeSection_decorators, { kind: "accessor", name: "activeSection", static: false, private: false, access: { has: obj => "activeSection" in obj, get: obj => obj.activeSection, set: (obj, value) => { obj.activeSection = value; } }, metadata: _metadata }, _activeSection_initializers, _activeSection_extraInitializers);
333
+ __esDecorate(this, null, _ownerFilter_decorators, { kind: "accessor", name: "ownerFilter", static: false, private: false, access: { has: obj => "ownerFilter" in obj, get: obj => obj.ownerFilter, set: (obj, value) => { obj.ownerFilter = value; } }, metadata: _metadata }, _ownerFilter_initializers, _ownerFilter_extraInitializers);
327
334
  __esDecorate(this, null, _routeState_decorators, { kind: "accessor", name: "routeState", static: false, private: false, access: { has: obj => "routeState" in obj, get: obj => obj.routeState, set: (obj, value) => { obj.routeState = value; } }, metadata: _metadata }, _routeState_initializers, _routeState_extraInitializers);
328
335
  __esDecorate(this, null, _profilesTargetsState_decorators, { kind: "accessor", name: "profilesTargetsState", static: false, private: false, access: { has: obj => "profilesTargetsState" in obj, get: obj => obj.profilesTargetsState, set: (obj, value) => { obj.profilesTargetsState = value; } }, metadata: _metadata }, _profilesTargetsState_initializers, _profilesTargetsState_extraInitializers);
329
336
  __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
330
337
  OpsViewRoutes = _classThis = _classDescriptor.value;
331
338
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
332
339
  }
333
- #routeFilter_accessor_storage = __runInitializers(this, _routeFilter_initializers, 'User Routes');
334
- get routeFilter() { return this.#routeFilter_accessor_storage; }
335
- set routeFilter(value) { this.#routeFilter_accessor_storage = value; }
336
- #routeState_accessor_storage = (__runInitializers(this, _routeFilter_extraInitializers), __runInitializers(this, _routeState_initializers, {
340
+ #activeSection_accessor_storage = __runInitializers(this, _activeSection_initializers, 'standard');
341
+ get activeSection() { return this.#activeSection_accessor_storage; }
342
+ set activeSection(value) { this.#activeSection_accessor_storage = value; }
343
+ #ownerFilter_accessor_storage = (__runInitializers(this, _activeSection_extraInitializers), __runInitializers(this, _ownerFilter_initializers, 'all'));
344
+ get ownerFilter() { return this.#ownerFilter_accessor_storage; }
345
+ set ownerFilter(value) { this.#ownerFilter_accessor_storage = value; }
346
+ sectionTabs = (__runInitializers(this, _ownerFilter_extraInitializers), [
347
+ {
348
+ key: 'Standard Routes',
349
+ iconName: 'lucide:route',
350
+ action: () => this.setRouteView('standard'),
351
+ },
352
+ {
353
+ key: 'Special Forwards',
354
+ iconName: 'lucide:split',
355
+ action: () => this.setRouteView('special'),
356
+ },
357
+ {
358
+ key: 'Redirects',
359
+ iconName: 'lucide:cornerDownRight',
360
+ action: () => this.setRouteView('redirects'),
361
+ },
362
+ ]);
363
+ ownerTabs = [
364
+ { key: 'All', action: () => this.setRouteOwnerFilter('all') },
365
+ { key: 'Operator', action: () => this.setRouteOwnerFilter('operator') },
366
+ {
367
+ key: 'Gateway Client',
368
+ action: () => this.setRouteOwnerFilter('gatewayClient'),
369
+ },
370
+ { key: 'System', action: () => this.setRouteOwnerFilter('system') },
371
+ ];
372
+ popStateHandler = () => {
373
+ const urlState = this.readUrlState();
374
+ this.activeSection = urlState.section;
375
+ this.ownerFilter = urlState.owner;
376
+ };
377
+ #routeState_accessor_storage = __runInitializers(this, _routeState_initializers, {
337
378
  mergedRoutes: [],
338
379
  warnings: [],
339
380
  httpRedirects: [],
@@ -342,7 +383,7 @@ let OpsViewRoutes = (() => {
342
383
  isLoading: false,
343
384
  error: null,
344
385
  lastUpdated: 0,
345
- }));
386
+ });
346
387
  get routeState() { return this.#routeState_accessor_storage; }
347
388
  set routeState(value) { this.#routeState_accessor_storage = value; }
348
389
  #profilesTargetsState_accessor_storage = (__runInitializers(this, _routeState_extraInitializers), __runInitializers(this, _profilesTargetsState_initializers, {
@@ -357,6 +398,10 @@ let OpsViewRoutes = (() => {
357
398
  constructor() {
358
399
  super();
359
400
  __runInitializers(this, _profilesTargetsState_extraInitializers);
401
+ const urlState = this.readUrlState();
402
+ this.activeSection = urlState.section;
403
+ this.ownerFilter = urlState.owner;
404
+ this.writeUrlState(urlState.section, urlState.owner, 'replace');
360
405
  const sub = appstate.routeManagementStatePart
361
406
  .select((s) => s)
362
407
  .subscribe((routeState) => {
@@ -381,6 +426,14 @@ let OpsViewRoutes = (() => {
381
426
  });
382
427
  this.rxSubscriptions.push(loginSub);
383
428
  }
429
+ async connectedCallback() {
430
+ await super.connectedCallback();
431
+ window.addEventListener('popstate', this.popStateHandler);
432
+ }
433
+ async disconnectedCallback() {
434
+ window.removeEventListener('popstate', this.popStateHandler);
435
+ await super.disconnectedCallback();
436
+ }
384
437
  static styles = [
385
438
  cssManager.defaultStyles,
386
439
  viewHostCss,
@@ -426,7 +479,11 @@ let OpsViewRoutes = (() => {
426
479
  const { mergedRoutes, warnings } = this.routeState;
427
480
  const disabledCount = mergedRoutes.filter((mr) => !mr.enabled).length;
428
481
  const configCount = mergedRoutes.filter((mr) => mr.origin !== 'api').length;
429
- const apiCount = mergedRoutes.filter((mr) => mr.origin === 'api').length;
482
+ const operatorCount = mergedRoutes.filter((mr) => {
483
+ return mr.origin === 'api'
484
+ && mr.metadata?.ownerType !== 'gatewayClient'
485
+ && !mr.metadata?.managedRouteKind;
486
+ }).length;
430
487
  const statsTiles = [
431
488
  {
432
489
  id: 'totalRoutes',
@@ -447,12 +504,12 @@ let OpsViewRoutes = (() => {
447
504
  color: '#8b5cf6',
448
505
  },
449
506
  {
450
- id: 'apiRoutes',
451
- title: 'User Routes',
507
+ id: 'operatorRoutes',
508
+ title: 'Operator Routes',
452
509
  type: 'number',
453
- value: apiCount,
510
+ value: operatorCount,
454
511
  icon: 'lucide:code',
455
- description: 'Created via API',
512
+ description: 'Created directly by operators',
456
513
  color: '#0ea5e9',
457
514
  },
458
515
  {
@@ -465,9 +522,19 @@ let OpsViewRoutes = (() => {
465
522
  color: disabledCount > 0 ? '#ef4444' : '#6b7280',
466
523
  },
467
524
  ];
468
- // Filter routes based on selected tab
469
- const isUserRoutes = this.routeFilter === 'User Routes';
470
- const filteredRoutes = mergedRoutes.filter((mr) => isUserRoutes ? mr.origin === 'api' : mr.origin !== 'api');
525
+ const standardRoutes = mergedRoutes.filter((route) => !route.metadata?.managedRouteKind);
526
+ const filteredRoutes = standardRoutes.filter((route) => {
527
+ switch (this.ownerFilter) {
528
+ case 'operator':
529
+ return route.origin === 'api' && route.metadata?.ownerType !== 'gatewayClient';
530
+ case 'gatewayClient':
531
+ return route.metadata?.ownerType === 'gatewayClient';
532
+ case 'system':
533
+ return route.origin !== 'api' || route.metadata?.ownerType === 'system';
534
+ default:
535
+ return true;
536
+ }
537
+ });
471
538
  // Map filtered routes to sz-route-list-view format
472
539
  const szRoutes = filteredRoutes.map((mr) => {
473
540
  const tags = [...(mr.route.tags || [])];
@@ -488,31 +555,39 @@ let OpsViewRoutes = (() => {
488
555
  <dees-heading level="3">Route Management</dees-heading>
489
556
 
490
557
  <div class="routesContainer">
558
+ <dees-appui-tabs
559
+ .tabs=${this.sectionTabs}
560
+ .selectedTab=${this.getSelectedSectionTab()}
561
+ ></dees-appui-tabs>
562
+
563
+ ${this.activeSection === 'special'
564
+ ? html `<ops-view-special-forwards></ops-view-special-forwards>`
565
+ : this.activeSection === 'redirects'
566
+ ? html `<ops-view-redirects .embedded=${true}></ops-view-redirects>`
567
+ : html `
491
568
  <dees-statsgrid
492
569
  .tiles=${statsTiles}
493
570
  .gridActions=${[
494
- {
495
- name: 'Add Route',
496
- iconName: 'lucide:plus',
497
- action: () => this.showCreateRouteDialog(),
498
- },
499
- {
500
- name: 'Refresh',
501
- iconName: 'lucide:refreshCw',
502
- action: () => this.refreshData(),
503
- },
504
- ]}
571
+ {
572
+ name: 'Add Route',
573
+ iconName: 'lucide:plus',
574
+ action: () => this.showCreateRouteDialog(),
575
+ },
576
+ {
577
+ name: 'Refresh',
578
+ iconName: 'lucide:refreshCw',
579
+ action: () => this.refreshData(),
580
+ },
581
+ ]}
505
582
  ></dees-statsgrid>
506
583
 
507
- <dees-input-multitoggle
508
- class="routeFilterToggle"
509
- .type=${'single'}
510
- .options=${['User Routes', 'System Routes']}
511
- .selectedOption=${this.routeFilter}
512
- ></dees-input-multitoggle>
584
+ <dees-appui-tabs
585
+ .tabs=${this.ownerTabs}
586
+ .selectedTab=${this.getSelectedOwnerTab()}
587
+ ></dees-appui-tabs>
513
588
 
514
589
  ${warnings.length > 0
515
- ? html `
590
+ ? html `
516
591
  <div class="warnings-bar">
517
592
  ${warnings.map((w) => html `
518
593
  <div class="warning-item">
@@ -522,24 +597,25 @@ let OpsViewRoutes = (() => {
522
597
  `)}
523
598
  </div>
524
599
  `
525
- : ''}
600
+ : ''}
526
601
 
527
602
  ${szRoutes.length > 0
528
- ? html `
603
+ ? html `
529
604
  <sz-route-list-view
530
605
  .routes=${szRoutes}
531
- .showActionsFilter=${isUserRoutes ? () => true : () => false}
606
+ .showActionsFilter=${(route) => this.canEditRoute(route)}
532
607
  @route-click=${(e) => this.handleRouteClick(e)}
533
608
  @route-edit=${(e) => this.handleRouteEdit(e)}
534
609
  @route-delete=${(e) => this.handleRouteDelete(e)}
535
610
  ></sz-route-list-view>
536
611
  `
537
- : html `
612
+ : html `
538
613
  <div class="empty-state">
539
- <p>No ${isUserRoutes ? 'user' : 'system'} routes</p>
540
- <p>${isUserRoutes ? 'Add a route to get started.' : 'System routes are generated from config, email, and DNS settings.'}</p>
614
+ <p>No ${this.getOwnerFilterLabel().toLowerCase()} routes</p>
615
+ <p>Choose another ownership filter or add an operator route.</p>
541
616
  </div>
542
617
  `}
618
+ `}
543
619
  </div>
544
620
  `;
545
621
  }
@@ -562,7 +638,7 @@ let OpsViewRoutes = (() => {
562
638
  <p>Status: <strong>${merged.enabled ? 'Enabled' : 'Disabled'}</strong></p>
563
639
  ${merged.route.vpnOnly ? html `<p>Access: <strong style="color: #22c55e;">VPN only</strong></p>` : ''}
564
640
  <p>ID: <code style="color: #888;">${merged.id}</code></p>
565
- ${isSystemManaged ? html `<p>This route is system-managed. Change its source config to modify it directly.</p>` : ''}
641
+ ${isSystemManaged ? html `<p>This route is managed by the system, a gateway client, or a specialized workflow.</p>` : ''}
566
642
  ${sourceBindingSummary ? html `<p>Source Bindings: <strong style="color: #a78bfa;">${sourceBindingSummary}</strong></p>` : ''}
567
643
  ${meta?.networkTargetName ? html `<p>Network Target: <strong style="color: #a78bfa;">${meta.networkTargetName}</strong></p>` : ''}
568
644
  </div>
@@ -1003,6 +1079,65 @@ let OpsViewRoutes = (() => {
1003
1079
  refreshData() {
1004
1080
  appstate.routeManagementStatePart.dispatchAction(appstate.fetchMergedRoutesAction, null);
1005
1081
  }
1082
+ getSelectedSectionTab() {
1083
+ const index = this.activeSection === 'special'
1084
+ ? 1
1085
+ : this.activeSection === 'redirects'
1086
+ ? 2
1087
+ : 0;
1088
+ return this.sectionTabs[index];
1089
+ }
1090
+ getSelectedOwnerTab() {
1091
+ const index = this.ownerFilter === 'operator'
1092
+ ? 1
1093
+ : this.ownerFilter === 'gatewayClient'
1094
+ ? 2
1095
+ : this.ownerFilter === 'system'
1096
+ ? 3
1097
+ : 0;
1098
+ return this.ownerTabs[index];
1099
+ }
1100
+ getOwnerFilterLabel() {
1101
+ return this.getSelectedOwnerTab().key;
1102
+ }
1103
+ setRouteView(section) {
1104
+ if (this.activeSection === section)
1105
+ return;
1106
+ this.activeSection = section;
1107
+ this.writeUrlState(section, this.ownerFilter, 'push');
1108
+ }
1109
+ setRouteOwnerFilter(owner) {
1110
+ if (this.ownerFilter === owner)
1111
+ return;
1112
+ this.ownerFilter = owner;
1113
+ this.writeUrlState(this.activeSection, owner, 'push');
1114
+ }
1115
+ readUrlState() {
1116
+ const params = new URL(window.location.href).searchParams;
1117
+ const tabParam = params.get('tab');
1118
+ const ownerParam = params.get('owner');
1119
+ const section = tabParam === 'special' || tabParam === 'redirects'
1120
+ ? tabParam
1121
+ : 'standard';
1122
+ const owner = (ownerParam === 'operator'
1123
+ || ownerParam === 'gatewayClient'
1124
+ || ownerParam === 'system')
1125
+ ? ownerParam
1126
+ : 'all';
1127
+ return { section, owner };
1128
+ }
1129
+ writeUrlState(section, owner, mode) {
1130
+ if (window.location.pathname !== '/network/routes')
1131
+ return;
1132
+ const url = new URL(window.location.href);
1133
+ url.searchParams.set('tab', section);
1134
+ url.searchParams.set('owner', owner);
1135
+ window.history[mode === 'push' ? 'pushState' : 'replaceState'](window.history.state, '', url);
1136
+ }
1137
+ canEditRoute(clickedRoute) {
1138
+ const merged = this.findMergedRoute(clickedRoute);
1139
+ return Boolean(merged && !this.isSystemManagedRoute(merged));
1140
+ }
1006
1141
  getSourceBindingRefs(metadata) {
1007
1142
  const bindingRefs = metadata?.sourceBindings
1008
1143
  ?.map((binding) => binding.sourceProfileRef)
@@ -1032,17 +1167,12 @@ let OpsViewRoutes = (() => {
1032
1167
  return undefined;
1033
1168
  }
1034
1169
  isSystemManagedRoute(merged) {
1035
- return merged.origin !== 'api';
1170
+ return merged.origin !== 'api'
1171
+ || merged.metadata?.ownerType === 'gatewayClient'
1172
+ || Boolean(merged.metadata?.managedRouteKind);
1036
1173
  }
1037
1174
  async firstUpdated() {
1038
1175
  await appstate.routeManagementStatePart.dispatchAction(appstate.fetchMergedRoutesAction, null);
1039
- const toggle = this.shadowRoot.querySelector('.routeFilterToggle');
1040
- if (toggle) {
1041
- const sub = toggle.changeSubject.subscribe(() => {
1042
- this.routeFilter = toggle.selectedOption;
1043
- });
1044
- this.rxSubscriptions.push(sub);
1045
- }
1046
1176
  }
1047
1177
  static {
1048
1178
  __runInitializers(_classThis, _classExtraInitializers);
@@ -1051,4 +1181,4 @@ let OpsViewRoutes = (() => {
1051
1181
  return OpsViewRoutes = _classThis;
1052
1182
  })();
1053
1183
  export { OpsViewRoutes };
1054
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BzLXZpZXctcm91dGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdHNfd2ViL2VsZW1lbnRzL25ldHdvcmsvb3BzLXZpZXctcm91dGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxPQUFPLEtBQUssUUFBUSxNQUFNLG1CQUFtQixDQUFDO0FBQzlDLE9BQU8sS0FBSyxVQUFVLE1BQU0sc0NBQXNDLENBQUM7QUFDbkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQy9DLE9BQU8sRUFBbUIsTUFBTSw2QkFBNkIsQ0FBQztBQVE5RCxPQUFPLEVBQ0wsV0FBVyxFQUNYLEdBQUcsRUFDSCxVQUFVLEVBQ1YsYUFBYSxFQUNiLElBQUksRUFDSixLQUFLLEdBRU4sTUFBTSw2QkFBNkIsQ0FBQztBQUVyQyx5REFBeUQ7QUFDekQsTUFBTSxjQUFjLEdBQUc7SUFDckIsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxzQ0FBc0MsRUFBRTtJQUMvRCxFQUFFLEdBQUcsRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLHdCQUF3QixFQUFFO0lBQ3hELEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsZUFBZSxFQUFFO0lBQzdDLEVBQUUsR0FBRyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sRUFBRSw0QkFBNEIsRUFBRTtDQUN6RSxDQUFDO0FBQ0YsTUFBTSxjQUFjLEdBQUc7SUFDckIsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSw0QkFBNEIsRUFBRTtJQUNyRCxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLG9CQUFvQixFQUFFO0NBQ2hELENBQUM7QUFDRixNQUFNLDZCQUE2QixHQUFHLENBQUMsa0JBQWtCLEVBQUUsYUFBYSxFQUFFLFFBQVEsQ0FBVSxDQUFDO0FBYTdGLFNBQVMsU0FB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
1184
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BzLXZpZXctcm91dGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdHNfd2ViL2VsZW1lbnRzL25ldHdvcmsvb3BzLXZpZXctcm91dGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxPQUFPLEtBQUssUUFBUSxNQUFNLG1CQUFtQixDQUFDO0FBQzlDLE9BQU8sS0FBSyxVQUFVLE1BQU0sc0NBQXNDLENBQUM7QUFDbkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQy9DLE9BQU8sRUFBdUMsTUFBTSw2QkFBNkIsQ0FBQztBQUNsRixPQUFPLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sZ0NBQWdDLENBQUM7QUFReEMsT0FBTyxFQUNMLFdBQVcsRUFDWCxHQUFHLEVBQ0gsVUFBVSxFQUNWLGFBQWEsRUFDYixJQUFJLEVBQ0osS0FBSyxHQUVOLE1BQU0sNkJBQTZCLENBQUM7QUFNckMseURBQXlEO0FBQ3pELE1BQU0sY0FBYyxHQUFHO0lBQ3JCLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsc0NBQXNDLEVBQUU7SUFDL0QsRUFBRSxHQUFHLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSx3QkFBd0IsRUFBRTtJQUN4RCxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLGVBQWUsRUFBRTtJQUM3QyxFQUFFLEdBQUcsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLEVBQUUsNEJBQTRCLEVBQUU7Q0FDekUsQ0FBQztBQUNGLE1BQU0sY0FBYyxHQUFHO0lBQ3JCLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsNEJBQTRCLEVBQUU7SUFDckQsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxvQkFBb0IsRUFBRTtDQUNoRCxDQUFDO0FBQ0YsTUFBTSw2QkFBNkIsR0FBRyxDQUFDLGtCQUFr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
@@ -0,0 +1,12 @@
1
+ import { DeesElement, type TemplateResult } from '@design.estate/dees-element';
2
+ import * as appstate from '../../appstate.js';
3
+ export declare class OpsViewSpecialForwards extends DeesElement {
4
+ accessor routeState: appstate.IRouteManagementState;
5
+ accessor profilesTargetsState: appstate.IProfilesTargetsState;
6
+ constructor();
7
+ static styles: import("@design.estate/dees-element").CSSResult[];
8
+ render(): TemplateResult;
9
+ private refreshData;
10
+ private showForwardDialog;
11
+ private confirmDelete;
12
+ }