@fastybird/smart-panel-backend 1.1.0-alpha.41 → 1.1.0-alpha.43

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 (101) hide show
  1. package/dist/app.module.js +1 -1
  2. package/dist/app.module.js.map +1 -1
  3. package/dist/common/utils/cancellable-exec.utils.d.ts +5 -0
  4. package/dist/common/utils/cancellable-exec.utils.js +34 -0
  5. package/dist/common/utils/cancellable-exec.utils.js.map +1 -0
  6. package/dist/common/utils/remote-access-observation.utils.d.ts +11 -0
  7. package/dist/common/utils/remote-access-observation.utils.js +89 -0
  8. package/dist/common/utils/remote-access-observation.utils.js.map +1 -0
  9. package/dist/modules/remote-access/controllers/remote-access.controller.js +11 -6
  10. package/dist/modules/remote-access/controllers/remote-access.controller.js.map +1 -1
  11. package/dist/modules/remote-access/models/provider.model.d.ts +3 -0
  12. package/dist/modules/remote-access/models/provider.model.js +23 -0
  13. package/dist/modules/remote-access/models/provider.model.js.map +1 -1
  14. package/dist/modules/remote-access/models/status.model.d.ts +2 -0
  15. package/dist/modules/remote-access/models/status.model.js +18 -1
  16. package/dist/modules/remote-access/models/status.model.js.map +1 -1
  17. package/dist/modules/remote-access/models/urls.model.d.ts +2 -0
  18. package/dist/modules/remote-access/models/urls.model.js +17 -0
  19. package/dist/modules/remote-access/models/urls.model.js.map +1 -1
  20. package/dist/modules/remote-access/platforms/remote-access-provider.platform.d.ts +18 -1
  21. package/dist/modules/remote-access/remote-access.constants.d.ts +2 -1
  22. package/dist/modules/remote-access/remote-access.constants.js +2 -1
  23. package/dist/modules/remote-access/remote-access.constants.js.map +1 -1
  24. package/dist/modules/remote-access/services/remote-access-proxy-contribution.service.d.ts +1 -0
  25. package/dist/modules/remote-access/services/remote-access-proxy-contribution.service.js +4 -1
  26. package/dist/modules/remote-access/services/remote-access-proxy-contribution.service.js.map +1 -1
  27. package/dist/modules/remote-access/services/remote-access-status.service.d.ts +40 -8
  28. package/dist/modules/remote-access/services/remote-access-status.service.js +314 -65
  29. package/dist/modules/remote-access/services/remote-access-status.service.js.map +1 -1
  30. package/dist/modules/remote-access/services/remote-access-url.service.d.ts +2 -2
  31. package/dist/modules/remote-access/services/remote-access-url.service.js +4 -2
  32. package/dist/modules/remote-access/services/remote-access-url.service.js.map +1 -1
  33. package/dist/modules/websocket/gateway/websocket.gateway.js +1 -0
  34. package/dist/modules/websocket/gateway/websocket.gateway.js.map +1 -1
  35. package/dist/plugins/remote-access-cloudflare-tunnel/controllers/setup.controller.d.ts +5 -3
  36. package/dist/plugins/remote-access-cloudflare-tunnel/controllers/setup.controller.js +20 -8
  37. package/dist/plugins/remote-access-cloudflare-tunnel/controllers/setup.controller.js.map +1 -1
  38. package/dist/plugins/remote-access-cloudflare-tunnel/controllers/status.controller.d.ts +3 -5
  39. package/dist/plugins/remote-access-cloudflare-tunnel/controllers/status.controller.js +11 -10
  40. package/dist/plugins/remote-access-cloudflare-tunnel/controllers/status.controller.js.map +1 -1
  41. package/dist/plugins/remote-access-cloudflare-tunnel/models/status.model.d.ts +2 -0
  42. package/dist/plugins/remote-access-cloudflare-tunnel/models/status.model.js +17 -0
  43. package/dist/plugins/remote-access-cloudflare-tunnel/models/status.model.js.map +1 -1
  44. package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflare-tunnel-managed.service.d.ts +20 -2
  45. package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflare-tunnel-managed.service.js +105 -48
  46. package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflare-tunnel-managed.service.js.map +1 -1
  47. package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflare-tunnel-provider.service.d.ts +13 -1
  48. package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflare-tunnel-provider.service.js +8 -2
  49. package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflare-tunnel-provider.service.js.map +1 -1
  50. package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflared-cli.service.d.ts +1 -1
  51. package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflared-cli.service.js +12 -24
  52. package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflared-cli.service.js.map +1 -1
  53. package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflared-metrics.service.d.ts +1 -1
  54. package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflared-metrics.service.js +5 -2
  55. package/dist/plugins/remote-access-cloudflare-tunnel/services/cloudflared-metrics.service.js.map +1 -1
  56. package/dist/plugins/remote-access-tailscale/controllers/setup.controller.d.ts +10 -5
  57. package/dist/plugins/remote-access-tailscale/controllers/setup.controller.js +105 -15
  58. package/dist/plugins/remote-access-tailscale/controllers/setup.controller.js.map +1 -1
  59. package/dist/plugins/remote-access-tailscale/controllers/status.controller.d.ts +5 -4
  60. package/dist/plugins/remote-access-tailscale/controllers/status.controller.js +19 -9
  61. package/dist/plugins/remote-access-tailscale/controllers/status.controller.js.map +1 -1
  62. package/dist/plugins/remote-access-tailscale/models/status.model.d.ts +16 -0
  63. package/dist/plugins/remote-access-tailscale/models/status.model.js +100 -1
  64. package/dist/plugins/remote-access-tailscale/models/status.model.js.map +1 -1
  65. package/dist/plugins/remote-access-tailscale/remote-access-tailscale.constants.d.ts +2 -0
  66. package/dist/plugins/remote-access-tailscale/remote-access-tailscale.constants.js +3 -1
  67. package/dist/plugins/remote-access-tailscale/remote-access-tailscale.constants.js.map +1 -1
  68. package/dist/plugins/remote-access-tailscale/remote-access-tailscale.exceptions.d.ts +17 -1
  69. package/dist/plugins/remote-access-tailscale/remote-access-tailscale.exceptions.js +33 -1
  70. package/dist/plugins/remote-access-tailscale/remote-access-tailscale.exceptions.js.map +1 -1
  71. package/dist/plugins/remote-access-tailscale/remote-access-tailscale.openapi.d.ts +2 -2
  72. package/dist/plugins/remote-access-tailscale/remote-access-tailscale.openapi.js +1 -0
  73. package/dist/plugins/remote-access-tailscale/remote-access-tailscale.openapi.js.map +1 -1
  74. package/dist/plugins/remote-access-tailscale/remote-access-tailscale.plugin.js +2 -0
  75. package/dist/plugins/remote-access-tailscale/remote-access-tailscale.plugin.js.map +1 -1
  76. package/dist/plugins/remote-access-tailscale/services/tailscale-cli.service.d.ts +8 -4
  77. package/dist/plugins/remote-access-tailscale/services/tailscale-cli.service.js +58 -14
  78. package/dist/plugins/remote-access-tailscale/services/tailscale-cli.service.js.map +1 -1
  79. package/dist/plugins/remote-access-tailscale/services/tailscale-login.service.d.ts +8 -3
  80. package/dist/plugins/remote-access-tailscale/services/tailscale-login.service.js +175 -151
  81. package/dist/plugins/remote-access-tailscale/services/tailscale-login.service.js.map +1 -1
  82. package/dist/plugins/remote-access-tailscale/services/tailscale-node-managed.service.d.ts +51 -7
  83. package/dist/plugins/remote-access-tailscale/services/tailscale-node-managed.service.js +481 -101
  84. package/dist/plugins/remote-access-tailscale/services/tailscale-node-managed.service.js.map +1 -1
  85. package/dist/plugins/remote-access-tailscale/services/tailscale-operation-coordinator.service.d.ts +33 -0
  86. package/dist/plugins/remote-access-tailscale/services/tailscale-operation-coordinator.service.js +167 -0
  87. package/dist/plugins/remote-access-tailscale/services/tailscale-operation-coordinator.service.js.map +1 -0
  88. package/dist/plugins/remote-access-tailscale/services/tailscale-provider.service.d.ts +13 -1
  89. package/dist/plugins/remote-access-tailscale/services/tailscale-provider.service.js +8 -2
  90. package/dist/plugins/remote-access-tailscale/services/tailscale-provider.service.js.map +1 -1
  91. package/dist/plugins/remote-access-tailscale/services/tailscale-serve.service.d.ts +1 -1
  92. package/dist/plugins/remote-access-tailscale/services/tailscale-serve.service.js +7 -6
  93. package/dist/plugins/remote-access-tailscale/services/tailscale-serve.service.js.map +1 -1
  94. package/dist/plugins/remote-access-tailscale/services/tailscale-setup.service.d.ts +1 -3
  95. package/dist/plugins/remote-access-tailscale/services/tailscale-setup.service.js +9 -11
  96. package/dist/plugins/remote-access-tailscale/services/tailscale-setup.service.js.map +1 -1
  97. package/dist/plugins/remote-access-tailscale/utils/tailscale-control.utils.d.ts +5 -0
  98. package/dist/plugins/remote-access-tailscale/utils/tailscale-control.utils.js +36 -0
  99. package/dist/plugins/remote-access-tailscale/utils/tailscale-control.utils.js.map +1 -0
  100. package/dist/tsconfig.build.tsbuildinfo +1 -1
  101. package/package.json +2 -2
@@ -17,7 +17,9 @@ const common_1 = require("@nestjs/common");
17
17
  const swagger_1 = require("@nestjs/swagger");
18
18
  const logger_1 = require("../../../common/logger");
19
19
  const transform_utils_1 = require("../../../common/utils/transform.utils");
20
+ const platform_service_1 = require("../../../modules/platform/services/platform.service");
20
21
  const provider_model_1 = require("../../../modules/remote-access/models/provider.model");
22
+ const remote_access_status_service_1 = require("../../../modules/remote-access/services/remote-access-status.service");
21
23
  const api_documentation_decorator_1 = require("../../../modules/swagger/decorators/api-documentation.decorator");
22
24
  const system_exceptions_1 = require("../../../modules/system/system.exceptions");
23
25
  const roles_guard_1 = require("../../../modules/users/guards/roles.guard");
@@ -30,16 +32,35 @@ const remote_access_tailscale_exceptions_1 = require("../remote-access-tailscale
30
32
  const tailscale_cli_service_1 = require("../services/tailscale-cli.service");
31
33
  const tailscale_login_service_1 = require("../services/tailscale-login.service");
32
34
  const tailscale_node_managed_service_1 = require("../services/tailscale-node-managed.service");
33
- const tailscale_provider_service_1 = require("../services/tailscale-provider.service");
34
35
  const tailscale_setup_service_1 = require("../services/tailscale-setup.service");
36
+ const tailscale_control_utils_1 = require("../utils/tailscale-control.utils");
35
37
  let SetupController = class SetupController {
36
- constructor(setupService, loginService, providerService, nodeManagedService) {
38
+ constructor(setupService, loginService, statusService, nodeManagedService, platformService) {
37
39
  this.setupService = setupService;
38
40
  this.loginService = loginService;
39
- this.providerService = providerService;
41
+ this.statusService = statusService;
40
42
  this.nodeManagedService = nodeManagedService;
43
+ this.platformService = platformService;
41
44
  this.logger = (0, logger_1.createExtensionLogger)(remote_access_tailscale_constants_1.REMOTE_ACCESS_TAILSCALE_PLUGIN_NAME, 'SetupController');
42
45
  }
46
+ async connect(res, request) {
47
+ try {
48
+ await this.nodeManagedService.connect();
49
+ }
50
+ catch (error) {
51
+ this.mapActionError(error, 'Tailscale connect failed', 'Failed to connect to Tailscale');
52
+ }
53
+ return this.buildStatusResponse(res, request);
54
+ }
55
+ async disconnect(res, request) {
56
+ try {
57
+ await this.nodeManagedService.stop();
58
+ }
59
+ catch (error) {
60
+ this.mapActionError(error, 'Tailscale disconnect failed', 'Failed to disconnect from Tailscale');
61
+ }
62
+ return this.buildStatusResponse(res, request);
63
+ }
43
64
  async install() {
44
65
  this.logger.debug('Tailscale install requested');
45
66
  try {
@@ -82,7 +103,7 @@ let SetupController = class SetupController {
82
103
  this.mapActionError(error, 'Tailscale login failed', 'Failed to sign in to Tailscale');
83
104
  }
84
105
  }
85
- async logout(res) {
106
+ async logout(res, request) {
86
107
  this.logger.debug('Tailscale logout requested');
87
108
  try {
88
109
  await this.loginService.logout();
@@ -90,9 +111,9 @@ let SetupController = class SetupController {
90
111
  catch (error) {
91
112
  this.mapActionError(error, 'Tailscale logout failed', 'Failed to sign out of Tailscale');
92
113
  }
93
- return this.buildStatusResponse(res);
114
+ return this.buildStatusResponse(res, request);
94
115
  }
95
- async resetPreferences(res) {
116
+ async resetPreferences(res, request) {
96
117
  this.logger.debug('Tailscale reset-preferences requested');
97
118
  try {
98
119
  await this.loginService.resetPreferences();
@@ -100,9 +121,18 @@ let SetupController = class SetupController {
100
121
  catch (error) {
101
122
  this.mapActionError(error, 'Tailscale reset-preferences failed', 'Failed to reset Tailscale preferences');
102
123
  }
103
- return this.buildStatusResponse(res);
124
+ return this.buildStatusResponse(res, request);
104
125
  }
105
126
  mapActionError(error, logPrefix, fallbackMessage) {
127
+ if (error instanceof remote_access_tailscale_exceptions_1.TailscaleOperationCancelledException ||
128
+ error instanceof remote_access_tailscale_exceptions_1.TailscaleOperationInProgressException ||
129
+ error instanceof remote_access_tailscale_exceptions_1.TailscalePluginDisabledException ||
130
+ error instanceof remote_access_tailscale_exceptions_1.TailscaleChildTerminationException) {
131
+ throw new common_1.ConflictException({ code: error.code, message: error.message });
132
+ }
133
+ if (error instanceof remote_access_tailscale_exceptions_1.TailscaleNodeStopFailedException) {
134
+ throw new common_1.ConflictException({ code: 'disconnect-failed', message: error.message });
135
+ }
106
136
  if (error instanceof remote_access_tailscale_exceptions_1.TailscaleRequirementUnsatisfiedException) {
107
137
  throw new common_1.ConflictException({ code: error.requirement.code, message: error.message });
108
138
  }
@@ -122,12 +152,20 @@ let SetupController = class SetupController {
122
152
  this.logger.error(`${logPrefix}: ${err.message}`);
123
153
  throw new common_1.InternalServerErrorException(fallbackMessage);
124
154
  }
125
- async buildStatusResponse(res) {
126
- const [status, requirements] = await Promise.all([
127
- this.providerService.getStatus(),
128
- this.nodeManagedService.evaluateRequirements(),
155
+ async buildStatusResponse(res, request) {
156
+ const [observed, privilegedWorkerSupport] = await Promise.all([
157
+ this.statusService.getProviderSnapshot(remote_access_tailscale_constants_1.REMOTE_ACCESS_TAILSCALE_PLUGIN_NAME, {
158
+ fresh: true,
159
+ }),
160
+ this.platformService.getPrivilegedWorkerSupport(),
129
161
  ]);
162
+ const snapshot = this.statusService.getCachedProviderSnapshot(remote_access_tailscale_constants_1.REMOTE_ACCESS_TAILSCALE_PLUGIN_NAME) ??
163
+ observed;
164
+ const { status, metadata } = snapshot;
165
+ const requirements = metadata?.requirements ?? [];
130
166
  const data = new status_model_1.RemoteAccessTailscalePluginStatusModel();
167
+ data.epoch = status.epoch;
168
+ data.revision = status.revision;
131
169
  data.type = status.type;
132
170
  data.state = status.state;
133
171
  data.endpoints = (0, transform_utils_1.toInstance)(provider_model_1.RemoteAccessEndpointModel, status.endpoints);
@@ -137,6 +175,21 @@ let SetupController = class SetupController {
137
175
  data.advisories = (0, transform_utils_1.toInstance)(provider_model_1.RemoteAccessAdvisoryModel, status.advisories);
138
176
  data.updatedAt = status.updatedAt;
139
177
  data.requirements = (0, transform_utils_1.toInstance)(status_model_1.RemoteAccessTailscalePluginRequirementModel, requirements);
178
+ data.control = (0, tailscale_control_utils_1.buildTailscaleControlModel)(metadata?.control ?? this.nodeManagedService.getControlState(), status.state, requirements, request?.auth?.role);
179
+ const lastJob = this.setupService.getLastJob();
180
+ data.setup = lastJob
181
+ ? (0, transform_utils_1.toInstance)(status_model_1.RemoteAccessTailscalePluginSetupJobModel, {
182
+ job_id: lastJob.id,
183
+ state: lastJob.status.state,
184
+ step: lastJob.status.step ?? null,
185
+ message: lastJob.status.message ?? null,
186
+ updated_at: lastJob.status.updatedAt,
187
+ })
188
+ : null;
189
+ const privilegedSetup = new status_model_1.RemoteAccessTailscalePluginPrivilegedSetupModel();
190
+ privilegedSetup.available = privilegedWorkerSupport.supported;
191
+ privilegedSetup.reason = privilegedWorkerSupport.reason;
192
+ data.privilegedSetup = privilegedSetup;
140
193
  if (data.state === 'pending-auth') {
141
194
  const pending = this.loginService.getPendingInteractiveAuth();
142
195
  if (pending) {
@@ -151,6 +204,40 @@ let SetupController = class SetupController {
151
204
  }
152
205
  };
153
206
  exports.SetupController = SetupController;
207
+ __decorate([
208
+ (0, swagger_1.ApiOperation)({
209
+ tags: [remote_access_tailscale_constants_1.REMOTE_ACCESS_TAILSCALE_PLUGIN_API_TAG_NAME],
210
+ summary: 'Connect the Tailscale node',
211
+ description: 'Connect an enabled plugin using its existing authentication. Starts a stopped service or reconciles an already-started disconnected node; repeated requests are harmless.',
212
+ operationId: 'create-remote-access-tailscale-plugin-connect',
213
+ }),
214
+ (0, api_documentation_decorator_1.ApiSuccessResponse)(status_model_1.RemoteAccessTailscalePluginStatusResponseModel, 'Tailscale status after connecting'),
215
+ (0, roles_guard_1.Roles)(users_constants_1.UserRole.ADMIN, users_constants_1.UserRole.OWNER),
216
+ (0, common_1.HttpCode)(common_1.HttpStatus.OK),
217
+ (0, common_1.Post)('connect'),
218
+ __param(0, (0, common_1.Res)({ passthrough: true })),
219
+ __param(1, (0, common_1.Req)()),
220
+ __metadata("design:type", Function),
221
+ __metadata("design:paramtypes", [Object, Object]),
222
+ __metadata("design:returntype", Promise)
223
+ ], SetupController.prototype, "connect", null);
224
+ __decorate([
225
+ (0, swagger_1.ApiOperation)({
226
+ tags: [remote_access_tailscale_constants_1.REMOTE_ACCESS_TAILSCALE_PLUGIN_API_TAG_NAME],
227
+ summary: 'Disconnect the Tailscale node',
228
+ description: 'Cancel pending node operations and disconnect the current session without logging out. Repeated requests are harmless. Disable the plugin to keep it off across application restarts.',
229
+ operationId: 'create-remote-access-tailscale-plugin-disconnect',
230
+ }),
231
+ (0, api_documentation_decorator_1.ApiSuccessResponse)(status_model_1.RemoteAccessTailscalePluginStatusResponseModel, 'Tailscale status after disconnecting'),
232
+ (0, roles_guard_1.Roles)(users_constants_1.UserRole.ADMIN, users_constants_1.UserRole.OWNER),
233
+ (0, common_1.HttpCode)(common_1.HttpStatus.OK),
234
+ (0, common_1.Post)('disconnect'),
235
+ __param(0, (0, common_1.Res)({ passthrough: true })),
236
+ __param(1, (0, common_1.Req)()),
237
+ __metadata("design:type", Function),
238
+ __metadata("design:paramtypes", [Object, Object]),
239
+ __metadata("design:returntype", Promise)
240
+ ], SetupController.prototype, "disconnect", null);
154
241
  __decorate([
155
242
  (0, swagger_1.ApiOperation)({
156
243
  tags: [remote_access_tailscale_constants_1.REMOTE_ACCESS_TAILSCALE_PLUGIN_API_TAG_NAME],
@@ -196,8 +283,9 @@ __decorate([
196
283
  (0, common_1.HttpCode)(common_1.HttpStatus.OK),
197
284
  (0, common_1.Post)('logout'),
198
285
  __param(0, (0, common_1.Res)({ passthrough: true })),
286
+ __param(1, (0, common_1.Req)()),
199
287
  __metadata("design:type", Function),
200
- __metadata("design:paramtypes", [Object]),
288
+ __metadata("design:paramtypes", [Object, Object]),
201
289
  __metadata("design:returntype", Promise)
202
290
  ], SetupController.prototype, "logout", null);
203
291
  __decorate([
@@ -212,8 +300,9 @@ __decorate([
212
300
  (0, common_1.HttpCode)(common_1.HttpStatus.OK),
213
301
  (0, common_1.Post)('reset-preferences'),
214
302
  __param(0, (0, common_1.Res)({ passthrough: true })),
303
+ __param(1, (0, common_1.Req)()),
215
304
  __metadata("design:type", Function),
216
- __metadata("design:paramtypes", [Object]),
305
+ __metadata("design:paramtypes", [Object, Object]),
217
306
  __metadata("design:returntype", Promise)
218
307
  ], SetupController.prototype, "resetPreferences", null);
219
308
  exports.SetupController = SetupController = __decorate([
@@ -221,7 +310,8 @@ exports.SetupController = SetupController = __decorate([
221
310
  (0, common_1.Controller)(),
222
311
  __metadata("design:paramtypes", [tailscale_setup_service_1.TailscaleSetupService,
223
312
  tailscale_login_service_1.TailscaleLoginService,
224
- tailscale_provider_service_1.TailscaleProviderService,
225
- tailscale_node_managed_service_1.TailscaleNodeManagedService])
313
+ remote_access_status_service_1.RemoteAccessStatusService,
314
+ tailscale_node_managed_service_1.TailscaleNodeManagedService,
315
+ platform_service_1.PlatformService])
226
316
  ], SetupController);
227
317
  //# sourceMappingURL=setup.controller.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setup.controller.js","sourceRoot":"","sources":["../../../../src/plugins/remote-access-tailscale/controllers/setup.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup.controller.js","sourceRoot":"","sources":["../../../../src/plugins/remote-access-tailscale/controllers/setup.controller.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,19 @@
1
1
  import { FastifyReply as Response } from 'fastify';
2
+ import { AuthenticatedRequest } from '../../../modules/auth/guards/auth.guard';
2
3
  import { PlatformService } from '../../../modules/platform/services/platform.service';
4
+ import { RemoteAccessStatusService } from '../../../modules/remote-access/services/remote-access-status.service';
3
5
  import { RemoteAccessTailscalePluginStatusResponseModel } from '../models/status.model';
4
6
  import { TailscaleLoginService } from '../services/tailscale-login.service';
5
7
  import { TailscaleNodeManagedService } from '../services/tailscale-node-managed.service';
6
- import { TailscaleProviderService } from '../services/tailscale-provider.service';
7
8
  import { TailscaleSetupService } from '../services/tailscale-setup.service';
8
9
  export declare class StatusController {
9
- private readonly providerService;
10
+ private readonly statusService;
10
11
  private readonly nodeManagedService;
11
12
  private readonly loginService;
12
13
  private readonly setupService;
13
14
  private readonly platformService;
14
15
  private readonly logger;
15
- constructor(providerService: TailscaleProviderService, nodeManagedService: TailscaleNodeManagedService, loginService: TailscaleLoginService, setupService: TailscaleSetupService, platformService: PlatformService);
16
- getStatus(res: Response): Promise<RemoteAccessTailscalePluginStatusResponseModel>;
16
+ constructor(statusService: RemoteAccessStatusService, nodeManagedService: TailscaleNodeManagedService, loginService: TailscaleLoginService, setupService: TailscaleSetupService, platformService: PlatformService);
17
+ getStatus(res: Response, request?: AuthenticatedRequest): Promise<RemoteAccessTailscalePluginStatusResponseModel>;
17
18
  private buildSetupJobModel;
18
19
  }
@@ -19,6 +19,7 @@ const logger_1 = require("../../../common/logger");
19
19
  const transform_utils_1 = require("../../../common/utils/transform.utils");
20
20
  const platform_service_1 = require("../../../modules/platform/services/platform.service");
21
21
  const provider_model_1 = require("../../../modules/remote-access/models/provider.model");
22
+ const remote_access_status_service_1 = require("../../../modules/remote-access/services/remote-access-status.service");
22
23
  const api_documentation_decorator_1 = require("../../../modules/swagger/decorators/api-documentation.decorator");
23
24
  const roles_guard_1 = require("../../../modules/users/guards/roles.guard");
24
25
  const users_constants_1 = require("../../../modules/users/users.constants");
@@ -26,25 +27,32 @@ const status_model_1 = require("../models/status.model");
26
27
  const remote_access_tailscale_constants_1 = require("../remote-access-tailscale.constants");
27
28
  const tailscale_login_service_1 = require("../services/tailscale-login.service");
28
29
  const tailscale_node_managed_service_1 = require("../services/tailscale-node-managed.service");
29
- const tailscale_provider_service_1 = require("../services/tailscale-provider.service");
30
30
  const tailscale_setup_service_1 = require("../services/tailscale-setup.service");
31
+ const tailscale_control_utils_1 = require("../utils/tailscale-control.utils");
31
32
  let StatusController = class StatusController {
32
- constructor(providerService, nodeManagedService, loginService, setupService, platformService) {
33
- this.providerService = providerService;
33
+ constructor(statusService, nodeManagedService, loginService, setupService, platformService) {
34
+ this.statusService = statusService;
34
35
  this.nodeManagedService = nodeManagedService;
35
36
  this.loginService = loginService;
36
37
  this.setupService = setupService;
37
38
  this.platformService = platformService;
38
39
  this.logger = (0, logger_1.createExtensionLogger)(remote_access_tailscale_constants_1.REMOTE_ACCESS_TAILSCALE_PLUGIN_NAME, 'StatusController');
39
40
  }
40
- async getStatus(res) {
41
+ async getStatus(res, request) {
41
42
  this.logger.debug('Fetching Tailscale node status');
42
- const [status, requirements, privilegedWorkerSupport] = await Promise.all([
43
- this.providerService.getStatus(),
44
- this.nodeManagedService.evaluateRequirements(),
43
+ const [observed, privilegedWorkerSupport] = await Promise.all([
44
+ this.statusService.getProviderSnapshot(remote_access_tailscale_constants_1.REMOTE_ACCESS_TAILSCALE_PLUGIN_NAME, {
45
+ fresh: true,
46
+ }),
45
47
  this.platformService.getPrivilegedWorkerSupport(),
46
48
  ]);
49
+ const snapshot = this.statusService.getCachedProviderSnapshot(remote_access_tailscale_constants_1.REMOTE_ACCESS_TAILSCALE_PLUGIN_NAME) ??
50
+ observed;
51
+ const { status, metadata } = snapshot;
52
+ const requirements = metadata?.requirements ?? [];
47
53
  const data = new status_model_1.RemoteAccessTailscalePluginStatusModel();
54
+ data.epoch = status.epoch;
55
+ data.revision = status.revision;
48
56
  data.type = status.type;
49
57
  data.state = status.state;
50
58
  data.endpoints = (0, transform_utils_1.toInstance)(provider_model_1.RemoteAccessEndpointModel, status.endpoints);
@@ -54,6 +62,7 @@ let StatusController = class StatusController {
54
62
  data.advisories = (0, transform_utils_1.toInstance)(provider_model_1.RemoteAccessAdvisoryModel, status.advisories);
55
63
  data.updatedAt = status.updatedAt;
56
64
  data.requirements = (0, transform_utils_1.toInstance)(status_model_1.RemoteAccessTailscalePluginRequirementModel, requirements);
65
+ data.control = (0, tailscale_control_utils_1.buildTailscaleControlModel)(metadata?.control ?? this.nodeManagedService.getControlState(), status.state, requirements, request?.auth?.role);
57
66
  data.setup = this.buildSetupJobModel();
58
67
  const privilegedSetup = new status_model_1.RemoteAccessTailscalePluginPrivilegedSetupModel();
59
68
  privilegedSetup.available = privilegedWorkerSupport.supported;
@@ -96,15 +105,16 @@ __decorate([
96
105
  (0, api_documentation_decorator_1.ApiSuccessResponse)(status_model_1.RemoteAccessTailscalePluginStatusResponseModel, 'Tailscale node status retrieved successfully'),
97
106
  (0, common_1.Get)('status'),
98
107
  __param(0, (0, common_1.Res)({ passthrough: true })),
108
+ __param(1, (0, common_1.Req)()),
99
109
  __metadata("design:type", Function),
100
- __metadata("design:paramtypes", [Object]),
110
+ __metadata("design:paramtypes", [Object, Object]),
101
111
  __metadata("design:returntype", Promise)
102
112
  ], StatusController.prototype, "getStatus", null);
103
113
  exports.StatusController = StatusController = __decorate([
104
114
  (0, swagger_1.ApiTags)(remote_access_tailscale_constants_1.REMOTE_ACCESS_TAILSCALE_PLUGIN_API_TAG_NAME),
105
115
  (0, common_1.Controller)(),
106
116
  (0, roles_guard_1.Roles)(users_constants_1.UserRole.ADMIN, users_constants_1.UserRole.OWNER),
107
- __metadata("design:paramtypes", [tailscale_provider_service_1.TailscaleProviderService,
117
+ __metadata("design:paramtypes", [remote_access_status_service_1.RemoteAccessStatusService,
108
118
  tailscale_node_managed_service_1.TailscaleNodeManagedService,
109
119
  tailscale_login_service_1.TailscaleLoginService,
110
120
  tailscale_setup_service_1.TailscaleSetupService,
@@ -1 +1 @@
1
- {"version":3,"file":"status.controller.js","sourceRoot":"","sources":["../../../../src/plugins/remote-access-tailscale/controllers/status.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status.controller.js","sourceRoot":"","sources":["../../../../src/plugins/remote-access-tailscale/controllers/status.controller.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,20 @@
1
1
  import { BaseSuccessResponseModel } from '../../../modules/api/models/api-response.model';
2
+ import { ServiceState } from '../../../modules/extensions/services/managed-extension-service.interface';
2
3
  import { RemoteAccessAdvisoryModel, RemoteAccessEndpointModel } from '../../../modules/remote-access/models/provider.model';
3
4
  import { RemoteAccessProviderState } from '../../../modules/remote-access/platforms/remote-access-provider.platform';
4
5
  import { PrivilegedJobStatus } from '../../../modules/system/services/privileged-worker.service';
5
6
  import { TailscaleRequirementCode } from '../services/tailscale-node-managed.service';
7
+ export declare const TAILSCALE_CONTROL_ACTIONS: readonly ["connect", "disconnect", "login", "logout", "reset-preferences"];
8
+ export type TailscaleControlAction = (typeof TAILSCALE_CONTROL_ACTIONS)[number];
9
+ declare const TAILSCALE_AUTHENTICATION_STATES: readonly ["unknown", "required", "authenticated"];
10
+ declare const TAILSCALE_OPERATIONS: readonly ["connect", "disconnect", "reconnect", "login", "logout", "preferences", "config", "serve", "reset", "shutdown"];
11
+ export declare class RemoteAccessTailscalePluginControlModel {
12
+ enabled: boolean;
13
+ serviceState: ServiceState;
14
+ authentication: (typeof TAILSCALE_AUTHENTICATION_STATES)[number];
15
+ operation: (typeof TAILSCALE_OPERATIONS)[number] | null;
16
+ availableActions: TailscaleControlAction[];
17
+ }
6
18
  export declare class RemoteAccessTailscalePluginRequirementRemedyModel {
7
19
  commands: string[];
8
20
  note: string | null;
@@ -25,6 +37,9 @@ export declare class RemoteAccessTailscalePluginPrivilegedSetupModel {
25
37
  reason: string | null;
26
38
  }
27
39
  export declare class RemoteAccessTailscalePluginStatusModel {
40
+ epoch: string;
41
+ revision: number;
42
+ control: RemoteAccessTailscalePluginControlModel;
28
43
  type: string;
29
44
  state: RemoteAccessProviderState;
30
45
  endpoints: RemoteAccessEndpointModel[];
@@ -42,3 +57,4 @@ export declare class RemoteAccessTailscalePluginStatusModel {
42
57
  export declare class RemoteAccessTailscalePluginStatusResponseModel extends BaseSuccessResponseModel<RemoteAccessTailscalePluginStatusModel> {
43
58
  data: RemoteAccessTailscalePluginStatusModel;
44
59
  }
60
+ export {};
@@ -9,7 +9,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.RemoteAccessTailscalePluginStatusResponseModel = exports.RemoteAccessTailscalePluginStatusModel = exports.RemoteAccessTailscalePluginPrivilegedSetupModel = exports.RemoteAccessTailscalePluginSetupJobModel = exports.RemoteAccessTailscalePluginRequirementModel = exports.RemoteAccessTailscalePluginRequirementRemedyModel = void 0;
12
+ exports.RemoteAccessTailscalePluginStatusResponseModel = exports.RemoteAccessTailscalePluginStatusModel = exports.RemoteAccessTailscalePluginPrivilegedSetupModel = exports.RemoteAccessTailscalePluginSetupJobModel = exports.RemoteAccessTailscalePluginRequirementModel = exports.RemoteAccessTailscalePluginRequirementRemedyModel = exports.RemoteAccessTailscalePluginControlModel = exports.TAILSCALE_CONTROL_ACTIONS = void 0;
13
13
  const class_transformer_1 = require("class-transformer");
14
14
  const class_validator_1 = require("class-validator");
15
15
  const swagger_1 = require("@nestjs/swagger");
@@ -35,6 +35,78 @@ const TAILSCALE_REQUIREMENT_CODES = [
35
35
  'version-supported',
36
36
  ];
37
37
  const TAILSCALE_SETUP_JOB_STATES = ['running', 'complete', 'failed', 'timeout'];
38
+ exports.TAILSCALE_CONTROL_ACTIONS = ['connect', 'disconnect', 'login', 'logout', 'reset-preferences'];
39
+ const TAILSCALE_SERVICE_STATES = ['stopped', 'starting', 'started', 'stopping', 'error'];
40
+ const TAILSCALE_AUTHENTICATION_STATES = ['unknown', 'required', 'authenticated'];
41
+ const TAILSCALE_OPERATIONS = [
42
+ 'connect',
43
+ 'disconnect',
44
+ 'reconnect',
45
+ 'login',
46
+ 'logout',
47
+ 'preferences',
48
+ 'config',
49
+ 'serve',
50
+ 'reset',
51
+ 'shutdown',
52
+ ];
53
+ let RemoteAccessTailscalePluginControlModel = class RemoteAccessTailscalePluginControlModel {
54
+ };
55
+ exports.RemoteAccessTailscalePluginControlModel = RemoteAccessTailscalePluginControlModel;
56
+ __decorate([
57
+ (0, swagger_1.ApiProperty)({ description: 'Whether the plugin is persistently enabled', type: 'boolean', example: true }),
58
+ (0, class_transformer_1.Expose)(),
59
+ (0, class_validator_1.IsBoolean)(),
60
+ __metadata("design:type", Boolean)
61
+ ], RemoteAccessTailscalePluginControlModel.prototype, "enabled", void 0);
62
+ __decorate([
63
+ (0, swagger_1.ApiProperty)({
64
+ name: 'service_state',
65
+ description: 'Managed service lifecycle, independent of the observed network connection',
66
+ enum: TAILSCALE_SERVICE_STATES,
67
+ example: 'stopped',
68
+ }),
69
+ (0, class_transformer_1.Expose)({ name: 'service_state' }),
70
+ (0, class_validator_1.IsEnum)(TAILSCALE_SERVICE_STATES),
71
+ __metadata("design:type", String)
72
+ ], RemoteAccessTailscalePluginControlModel.prototype, "serviceState", void 0);
73
+ __decorate([
74
+ (0, swagger_1.ApiProperty)({
75
+ description: 'Last observed authentication readiness; Disconnect preserves authentication',
76
+ enum: TAILSCALE_AUTHENTICATION_STATES,
77
+ example: 'authenticated',
78
+ }),
79
+ (0, class_transformer_1.Expose)(),
80
+ (0, class_validator_1.IsEnum)(TAILSCALE_AUTHENTICATION_STATES),
81
+ __metadata("design:type", Object)
82
+ ], RemoteAccessTailscalePluginControlModel.prototype, "authentication", void 0);
83
+ __decorate([
84
+ (0, swagger_1.ApiProperty)({
85
+ description: 'Current provider operation, null while idle',
86
+ oneOf: [{ type: 'string', enum: [...TAILSCALE_OPERATIONS] }, { type: 'null' }],
87
+ example: null,
88
+ }),
89
+ (0, class_transformer_1.Expose)(),
90
+ (0, class_validator_1.IsOptional)(),
91
+ (0, class_validator_1.IsEnum)(TAILSCALE_OPERATIONS),
92
+ __metadata("design:type", Object)
93
+ ], RemoteAccessTailscalePluginControlModel.prototype, "operation", void 0);
94
+ __decorate([
95
+ (0, swagger_1.ApiProperty)({
96
+ name: 'available_actions',
97
+ description: 'Actions available to the authenticated caller; permissions and prerequisites are rechecked on execution',
98
+ type: 'array',
99
+ items: { type: 'string', enum: [...exports.TAILSCALE_CONTROL_ACTIONS] },
100
+ example: ['connect', 'logout'],
101
+ }),
102
+ (0, class_transformer_1.Expose)({ name: 'available_actions' }),
103
+ (0, class_validator_1.IsArray)(),
104
+ (0, class_validator_1.IsEnum)(exports.TAILSCALE_CONTROL_ACTIONS, { each: true }),
105
+ __metadata("design:type", Array)
106
+ ], RemoteAccessTailscalePluginControlModel.prototype, "availableActions", void 0);
107
+ exports.RemoteAccessTailscalePluginControlModel = RemoteAccessTailscalePluginControlModel = __decorate([
108
+ (0, swagger_1.ApiSchema)({ name: 'RemoteAccessTailscalePluginDataControl' })
109
+ ], RemoteAccessTailscalePluginControlModel);
38
110
  let RemoteAccessTailscalePluginRequirementRemedyModel = class RemoteAccessTailscalePluginRequirementRemedyModel {
39
111
  };
40
112
  exports.RemoteAccessTailscalePluginRequirementRemedyModel = RemoteAccessTailscalePluginRequirementRemedyModel;
@@ -207,6 +279,33 @@ exports.RemoteAccessTailscalePluginPrivilegedSetupModel = RemoteAccessTailscaleP
207
279
  let RemoteAccessTailscalePluginStatusModel = class RemoteAccessTailscalePluginStatusModel {
208
280
  };
209
281
  exports.RemoteAccessTailscalePluginStatusModel = RemoteAccessTailscalePluginStatusModel;
282
+ __decorate([
283
+ (0, swagger_1.ApiProperty)({ description: 'Process epoch; changes after backend restart', type: 'string' }),
284
+ (0, class_transformer_1.Expose)(),
285
+ (0, class_validator_1.IsString)(),
286
+ __metadata("design:type", String)
287
+ ], RemoteAccessTailscalePluginStatusModel.prototype, "epoch", void 0);
288
+ __decorate([
289
+ (0, swagger_1.ApiProperty)({
290
+ description: 'Monotonic accepted publication revision within this epoch',
291
+ type: 'integer',
292
+ minimum: 0,
293
+ }),
294
+ (0, class_transformer_1.Expose)(),
295
+ (0, class_validator_1.IsInt)(),
296
+ (0, class_validator_1.Min)(0),
297
+ __metadata("design:type", Number)
298
+ ], RemoteAccessTailscalePluginStatusModel.prototype, "revision", void 0);
299
+ __decorate([
300
+ (0, swagger_1.ApiProperty)({
301
+ description: 'Administrative control state; independent of the provider connection state',
302
+ type: () => RemoteAccessTailscalePluginControlModel,
303
+ }),
304
+ (0, class_transformer_1.Expose)(),
305
+ (0, class_validator_1.ValidateNested)(),
306
+ (0, class_transformer_1.Type)(() => RemoteAccessTailscalePluginControlModel),
307
+ __metadata("design:type", RemoteAccessTailscalePluginControlModel)
308
+ ], RemoteAccessTailscalePluginStatusModel.prototype, "control", void 0);
210
309
  __decorate([
211
310
  (0, swagger_1.ApiProperty)({
212
311
  description: 'Provider plugin type identifier',
@@ -1 +1 @@
1
- {"version":3,"file":"status.model.js","sourceRoot":"","sources":["../../../../src/plugins/remote-access-tailscale/models/status.model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status.model.js","sourceRoot":"","sources":["../../../../src/plugins/remote-access-tailscale/models/status.model.ts"],"names":[],"mappings":"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"}
@@ -21,3 +21,5 @@ export declare const TAILSCALE_LOGIN_FIRST_BLOCK_TIMEOUT_MS = 30000;
21
21
  export declare const TAILSCALE_KEY_EXPIRY_ADVISORY_WINDOW_MS: number;
22
22
  export declare const TAILSCALE_RECONNECT_BASE_DELAY_MS = 30000;
23
23
  export declare const TAILSCALE_RECONNECT_MAX_DELAY_MS: number;
24
+ export declare const TAILSCALE_CHILD_TERM_GRACE_MS = 500;
25
+ export declare const TAILSCALE_CHILD_KILL_GRACE_MS = 500;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TAILSCALE_RECONNECT_MAX_DELAY_MS = exports.TAILSCALE_RECONNECT_BASE_DELAY_MS = exports.TAILSCALE_KEY_EXPIRY_ADVISORY_WINDOW_MS = exports.TAILSCALE_LOGIN_FIRST_BLOCK_TIMEOUT_MS = exports.TAILSCALE_LOGIN_INTERACTIVE_TIMEOUT_MS = exports.TAILSCALE_LOGIN_AUTH_KEY_TIMEOUT_MS = exports.TAILSCALE_DATA_SUBDIR = exports.TAILSCALE_SETUP_STATUS_FILENAME = exports.TAILSCALE_SETUP_WORKER_UNIT = exports.REMOTE_ACCESS_TAILSCALE_ALLOW_DEV_ENV = exports.TAILSCALE_POLL_INTERVAL_STABLE_MS = exports.TAILSCALE_POLL_INTERVAL_TRANSITIONING_MS = exports.TAILSCALE_DEFAULT_LOGIN_SERVER = exports.TAILSCALE_STOP_STATUS_TIMEOUT_MS = exports.TAILSCALE_SYSTEMCTL_PROBE_TIMEOUT_MS = exports.TAILSCALE_CLI_MAX_BUFFER_BYTES = exports.TAILSCALE_CLI_DEFAULT_TIMEOUT_MS = exports.TAILSCALE_BINARY = exports.TAILSCALE_MIN_VERSION = exports.REMOTE_ACCESS_TAILSCALE_PLUGIN_API_TAG_DESCRIPTION = exports.REMOTE_ACCESS_TAILSCALE_PLUGIN_API_TAG_NAME = exports.REMOTE_ACCESS_TAILSCALE_PLUGIN_NAME = exports.REMOTE_ACCESS_TAILSCALE_PLUGIN_PREFIX = void 0;
3
+ exports.TAILSCALE_CHILD_KILL_GRACE_MS = exports.TAILSCALE_CHILD_TERM_GRACE_MS = exports.TAILSCALE_RECONNECT_MAX_DELAY_MS = exports.TAILSCALE_RECONNECT_BASE_DELAY_MS = exports.TAILSCALE_KEY_EXPIRY_ADVISORY_WINDOW_MS = exports.TAILSCALE_LOGIN_FIRST_BLOCK_TIMEOUT_MS = exports.TAILSCALE_LOGIN_INTERACTIVE_TIMEOUT_MS = exports.TAILSCALE_LOGIN_AUTH_KEY_TIMEOUT_MS = exports.TAILSCALE_DATA_SUBDIR = exports.TAILSCALE_SETUP_STATUS_FILENAME = exports.TAILSCALE_SETUP_WORKER_UNIT = exports.REMOTE_ACCESS_TAILSCALE_ALLOW_DEV_ENV = exports.TAILSCALE_POLL_INTERVAL_STABLE_MS = exports.TAILSCALE_POLL_INTERVAL_TRANSITIONING_MS = exports.TAILSCALE_DEFAULT_LOGIN_SERVER = exports.TAILSCALE_STOP_STATUS_TIMEOUT_MS = exports.TAILSCALE_SYSTEMCTL_PROBE_TIMEOUT_MS = exports.TAILSCALE_CLI_MAX_BUFFER_BYTES = exports.TAILSCALE_CLI_DEFAULT_TIMEOUT_MS = exports.TAILSCALE_BINARY = exports.TAILSCALE_MIN_VERSION = exports.REMOTE_ACCESS_TAILSCALE_PLUGIN_API_TAG_DESCRIPTION = exports.REMOTE_ACCESS_TAILSCALE_PLUGIN_API_TAG_NAME = exports.REMOTE_ACCESS_TAILSCALE_PLUGIN_NAME = exports.REMOTE_ACCESS_TAILSCALE_PLUGIN_PREFIX = void 0;
4
4
  exports.REMOTE_ACCESS_TAILSCALE_PLUGIN_PREFIX = 'remote-access-tailscale';
5
5
  exports.REMOTE_ACCESS_TAILSCALE_PLUGIN_NAME = 'remote-access-tailscale-plugin';
6
6
  exports.REMOTE_ACCESS_TAILSCALE_PLUGIN_API_TAG_NAME = 'Remote access Tailscale plugin';
@@ -24,4 +24,6 @@ exports.TAILSCALE_LOGIN_FIRST_BLOCK_TIMEOUT_MS = 30_000;
24
24
  exports.TAILSCALE_KEY_EXPIRY_ADVISORY_WINDOW_MS = 14 * 24 * 60 * 60 * 1000;
25
25
  exports.TAILSCALE_RECONNECT_BASE_DELAY_MS = 30_000;
26
26
  exports.TAILSCALE_RECONNECT_MAX_DELAY_MS = 5 * 60 * 1000;
27
+ exports.TAILSCALE_CHILD_TERM_GRACE_MS = 500;
28
+ exports.TAILSCALE_CHILD_KILL_GRACE_MS = 500;
27
29
  //# sourceMappingURL=remote-access-tailscale.constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"remote-access-tailscale.constants.js","sourceRoot":"","sources":["../../../src/plugins/remote-access-tailscale/remote-access-tailscale.constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,qCAAqC,GAAG,yBAAyB,CAAC;AAElE,QAAA,mCAAmC,GAAG,gCAAgC,CAAC;AAEvE,QAAA,2CAA2C,GAAG,gCAAgC,CAAC;AAE/E,QAAA,kDAAkD,GAC9D,mHAAmH,CAAC;AASxG,QAAA,qBAAqB,GAAG,QAAQ,CAAC;AAGjC,QAAA,gBAAgB,GAAG,WAAW,CAAC;AAG/B,QAAA,gCAAgC,GAAG,MAAM,CAAC;AAS1C,QAAA,8BAA8B,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAGlD,QAAA,oCAAoC,GAAG,KAAK,CAAC;AAQ7C,QAAA,gCAAgC,GAAG,KAAK,CAAC;AAEzC,QAAA,8BAA8B,GAAG,oCAAoC,CAAC;AAGtE,QAAA,wCAAwC,GAAG,KAAK,CAAC;AAGjD,QAAA,iCAAiC,GAAG,MAAM,CAAC;AAQ3C,QAAA,qCAAqC,GAAG,4BAA4B,CAAC;AAGrE,QAAA,2BAA2B,GAAG,2BAA2B,CAAC;AAG1D,QAAA,+BAA+B,GAAG,6BAA6B,CAAC;AAOhE,QAAA,qBAAqB,GAAG,eAAe,CAAC;AAGxC,QAAA,mCAAmC,GAAG,OAAO,CAAC;AAG9C,QAAA,sCAAsC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAYxD,QAAA,sCAAsC,GAAG,MAAM,CAAC;AAGhD,QAAA,uCAAuC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAUnE,QAAA,iCAAiC,GAAG,MAAM,CAAC;AAG3C,QAAA,gCAAgC,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC"}
1
+ {"version":3,"file":"remote-access-tailscale.constants.js","sourceRoot":"","sources":["../../../src/plugins/remote-access-tailscale/remote-access-tailscale.constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,qCAAqC,GAAG,yBAAyB,CAAC;AAElE,QAAA,mCAAmC,GAAG,gCAAgC,CAAC;AAEvE,QAAA,2CAA2C,GAAG,gCAAgC,CAAC;AAE/E,QAAA,kDAAkD,GAC9D,mHAAmH,CAAC;AASxG,QAAA,qBAAqB,GAAG,QAAQ,CAAC;AAGjC,QAAA,gBAAgB,GAAG,WAAW,CAAC;AAG/B,QAAA,gCAAgC,GAAG,MAAM,CAAC;AAS1C,QAAA,8BAA8B,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAGlD,QAAA,oCAAoC,GAAG,KAAK,CAAC;AAQ7C,QAAA,gCAAgC,GAAG,KAAK,CAAC;AAEzC,QAAA,8BAA8B,GAAG,oCAAoC,CAAC;AAGtE,QAAA,wCAAwC,GAAG,KAAK,CAAC;AAGjD,QAAA,iCAAiC,GAAG,MAAM,CAAC;AAQ3C,QAAA,qCAAqC,GAAG,4BAA4B,CAAC;AAGrE,QAAA,2BAA2B,GAAG,2BAA2B,CAAC;AAG1D,QAAA,+BAA+B,GAAG,6BAA6B,CAAC;AAOhE,QAAA,qBAAqB,GAAG,eAAe,CAAC;AAGxC,QAAA,mCAAmC,GAAG,OAAO,CAAC;AAG9C,QAAA,sCAAsC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAYxD,QAAA,sCAAsC,GAAG,MAAM,CAAC;AAGhD,QAAA,uCAAuC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAUnE,QAAA,iCAAiC,GAAG,MAAM,CAAC;AAG3C,QAAA,gCAAgC,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAEjD,QAAA,6BAA6B,GAAG,GAAG,CAAC;AACpC,QAAA,6BAA6B,GAAG,GAAG,CAAC"}