@samanhappy/mcphub 1.1.13 → 1.1.14

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 (145) hide show
  1. package/dist/config/index.js +1 -1
  2. package/dist/config/index.js.map +1 -1
  3. package/dist/controllers/configController.js +1 -0
  4. package/dist/controllers/configController.js.map +1 -1
  5. package/dist/controllers/credentialBindingController.js +35 -11
  6. package/dist/controllers/credentialBindingController.js.map +1 -1
  7. package/dist/controllers/serverController.js +29 -4
  8. package/dist/controllers/serverController.js.map +1 -1
  9. package/dist/dao/ActivityDao.js +2 -0
  10. package/dist/dao/ActivityDao.js.map +1 -1
  11. package/dist/dao/GroupDao.js +24 -0
  12. package/dist/dao/GroupDao.js.map +1 -1
  13. package/dist/dao/GroupDaoDbImpl.js +23 -0
  14. package/dist/dao/GroupDaoDbImpl.js.map +1 -1
  15. package/dist/dao/ServerDao.js +5 -0
  16. package/dist/dao/ServerDao.js.map +1 -1
  17. package/dist/dao/ServerDaoDbImpl.js +1 -0
  18. package/dist/dao/ServerDaoDbImpl.js.map +1 -1
  19. package/dist/dao/SystemConfigDao.js +5 -2
  20. package/dist/dao/SystemConfigDao.js.map +1 -1
  21. package/dist/dao/SystemConfigDaoDbImpl.js +11 -0
  22. package/dist/dao/SystemConfigDaoDbImpl.js.map +1 -1
  23. package/dist/dao/base/JsonFileBaseDao.js +17 -2
  24. package/dist/dao/base/JsonFileBaseDao.js.map +1 -1
  25. package/dist/db/entities/Activity.js +4 -0
  26. package/dist/db/entities/Activity.js.map +1 -1
  27. package/dist/db/entities/SystemConfig.js +8 -0
  28. package/dist/db/entities/SystemConfig.js.map +1 -1
  29. package/dist/db/repositories/GroupRepository.js +36 -0
  30. package/dist/db/repositories/GroupRepository.js.map +1 -1
  31. package/dist/db/repositories/ServerRepository.js.map +1 -1
  32. package/dist/db/repositories/VectorEmbeddingRepository.js +11 -1
  33. package/dist/db/repositories/VectorEmbeddingRepository.js.map +1 -1
  34. package/dist/routes/index.js +4 -1
  35. package/dist/routes/index.js.map +1 -1
  36. package/dist/server.js +2 -0
  37. package/dist/server.js.map +1 -1
  38. package/dist/services/activityLoggingService.js +1 -0
  39. package/dist/services/activityLoggingService.js.map +1 -1
  40. package/dist/services/contextCostService.js +2 -2
  41. package/dist/services/contextCostService.js.map +1 -1
  42. package/dist/services/groupService.js +6 -1
  43. package/dist/services/groupService.js.map +1 -1
  44. package/dist/services/mcpService.js +127 -4
  45. package/dist/services/mcpService.js.map +1 -1
  46. package/dist/services/principalRuntimeService.js +19 -0
  47. package/dist/services/principalRuntimeService.js.map +1 -1
  48. package/dist/services/smartRoutingService.js +20 -2
  49. package/dist/services/smartRoutingService.js.map +1 -1
  50. package/dist/services/toolPolicyDiagnostics.js +27 -0
  51. package/dist/services/toolPolicyDiagnostics.js.map +1 -0
  52. package/dist/services/toolPolicyService.js +41 -0
  53. package/dist/services/toolPolicyService.js.map +1 -0
  54. package/dist/services/vectorSearchService.js +4 -2
  55. package/dist/services/vectorSearchService.js.map +1 -1
  56. package/dist/types/toolPolicy.js +2 -0
  57. package/dist/types/toolPolicy.js.map +1 -0
  58. package/dist/utils/groupKeyScope.js +28 -0
  59. package/dist/utils/groupKeyScope.js.map +1 -0
  60. package/dist/utils/migration.js +5 -1
  61. package/dist/utils/migration.js.map +1 -1
  62. package/dist/utils/serverIdentity.js +7 -0
  63. package/dist/utils/serverIdentity.js.map +1 -0
  64. package/dist/utils/settingsSync.js +11 -1
  65. package/dist/utils/settingsSync.js.map +1 -1
  66. package/dist/utils/systemConfigCache.js +1 -1
  67. package/dist/utils/systemConfigCache.js.map +1 -1
  68. package/dist/utils/tokenCost.js +35 -3
  69. package/dist/utils/tokenCost.js.map +1 -1
  70. package/dist/utils/toolPolicy.js +42 -0
  71. package/dist/utils/toolPolicy.js.map +1 -0
  72. package/frontend/dist/assets/{ActivityPage-C68nRD4J.js → ActivityPage-C8Zj4FeE.js} +2 -2
  73. package/frontend/dist/assets/{ActivityPage-C68nRD4J.js.map → ActivityPage-C8Zj4FeE.js.map} +1 -1
  74. package/frontend/dist/assets/CredentialsPage-BnzqPYjg.js +2 -0
  75. package/frontend/dist/assets/CredentialsPage-BnzqPYjg.js.map +1 -0
  76. package/frontend/dist/assets/{Dashboard-CyTt5-52.js → Dashboard-CCiZcGi4.js} +2 -2
  77. package/frontend/dist/assets/{Dashboard-CyTt5-52.js.map → Dashboard-CCiZcGi4.js.map} +1 -1
  78. package/frontend/dist/assets/{EndpointCopy-DxCJY8u6.js → EndpointCopy-CmKx4RVL.js} +2 -2
  79. package/frontend/dist/assets/{EndpointCopy-DxCJY8u6.js.map → EndpointCopy-CmKx4RVL.js.map} +1 -1
  80. package/frontend/dist/assets/GroupsPage-DHgQeVHy.js +33 -0
  81. package/frontend/dist/assets/{GroupsPage-C9uf7qRF.js.map → GroupsPage-DHgQeVHy.js.map} +1 -1
  82. package/frontend/dist/assets/LoginPage-Hn1uu0vB.js +2 -0
  83. package/frontend/dist/assets/LoginPage-Hn1uu0vB.js.map +1 -0
  84. package/frontend/dist/assets/{LogsPage-D3CAJzpq.js → LogsPage-JMCtTjCv.js} +2 -2
  85. package/frontend/dist/assets/LogsPage-JMCtTjCv.js.map +1 -0
  86. package/frontend/dist/assets/MarketPage-Bvi1KESo.js +2 -0
  87. package/frontend/dist/assets/{MarketPage-DsyVFNai.js.map → MarketPage-Bvi1KESo.js.map} +1 -1
  88. package/frontend/dist/assets/{OAuthConsentPage-go6iV2rX.js → OAuthConsentPage-DofQEZAU.js} +2 -2
  89. package/frontend/dist/assets/{OAuthConsentPage-go6iV2rX.js.map → OAuthConsentPage-DofQEZAU.js.map} +1 -1
  90. package/frontend/dist/assets/Pagination-D99WHhBx.js +2 -0
  91. package/frontend/dist/assets/Pagination-D99WHhBx.js.map +1 -0
  92. package/frontend/dist/assets/{PromptsPage-TJYCppKD.js → PromptsPage-B-8vczAR.js} +2 -2
  93. package/frontend/dist/assets/{PromptsPage-TJYCppKD.js.map → PromptsPage-B-8vczAR.js.map} +1 -1
  94. package/frontend/dist/assets/{ResourcesPage-B9ucLCSU.js → ResourcesPage-DLAIatoG.js} +2 -2
  95. package/frontend/dist/assets/{ResourcesPage-B9ucLCSU.js.map → ResourcesPage-DLAIatoG.js.map} +1 -1
  96. package/frontend/dist/assets/ServersPage-wVLsTL_f.js +39 -0
  97. package/frontend/dist/assets/ServersPage-wVLsTL_f.js.map +1 -0
  98. package/frontend/dist/assets/SettingsPage-DkfXDE5_.js +14 -0
  99. package/frontend/dist/assets/SettingsPage-DkfXDE5_.js.map +1 -0
  100. package/frontend/dist/assets/{StatusDot-hrwd7ElQ.js → StatusDot-00-sTQKv.js} +2 -2
  101. package/frontend/dist/assets/{StatusDot-hrwd7ElQ.js.map → StatusDot-00-sTQKv.js.map} +1 -1
  102. package/frontend/dist/assets/{ToggleGroup-BXCGM08S.js → ToggleGroup-CtWBng3r.js} +2 -2
  103. package/frontend/dist/assets/{ToggleGroup-BXCGM08S.js.map → ToggleGroup-CtWBng3r.js.map} +1 -1
  104. package/frontend/dist/assets/UsersPage-BtdFWcVD.js +2 -0
  105. package/frontend/dist/assets/UsersPage-BtdFWcVD.js.map +1 -0
  106. package/frontend/dist/assets/clipboard-2RRFM-q8.js +2 -0
  107. package/frontend/dist/assets/{clipboard-CoLstiwP.js.map → clipboard-2RRFM-q8.js.map} +1 -1
  108. package/frontend/dist/assets/{CopyClientConfigDialog-Clr8hk1S.js → costRevision-Ntl7VtWo.js} +4 -4
  109. package/frontend/dist/assets/costRevision-Ntl7VtWo.js.map +1 -0
  110. package/frontend/dist/assets/{icons-vendor-CkcU1LMA.js → icons-vendor-CyAS6fj0.js} +2 -2
  111. package/frontend/dist/assets/{icons-vendor-CkcU1LMA.js.map → icons-vendor-CyAS6fj0.js.map} +1 -1
  112. package/frontend/dist/assets/index-CkSmxNPW.js +3 -0
  113. package/frontend/dist/assets/index-CkSmxNPW.js.map +1 -0
  114. package/frontend/dist/assets/index-DrHctFvx.css +1 -0
  115. package/frontend/dist/assets/{resourceService-DXuM3elu.js → resourceService-BB4UM6IQ.js} +2 -2
  116. package/frontend/dist/assets/{resourceService-DXuM3elu.js.map → resourceService-BB4UM6IQ.js.map} +1 -1
  117. package/frontend/dist/assets/useCostData-C3XnQyUj.js +2 -0
  118. package/frontend/dist/assets/useCostData-C3XnQyUj.js.map +1 -0
  119. package/frontend/dist/assets/{variableDetection-Civ1fQ-c.js → variableDetection-BUXwrSop.js} +2 -2
  120. package/frontend/dist/assets/{variableDetection-Civ1fQ-c.js.map → variableDetection-BUXwrSop.js.map} +1 -1
  121. package/frontend/dist/index.html +3 -3
  122. package/mcp_settings.json +2 -0
  123. package/package.json +1 -1
  124. package/frontend/dist/assets/CopyClientConfigDialog-Clr8hk1S.js.map +0 -1
  125. package/frontend/dist/assets/CredentialsPage-WxYmPkS2.js +0 -2
  126. package/frontend/dist/assets/CredentialsPage-WxYmPkS2.js.map +0 -1
  127. package/frontend/dist/assets/GroupsPage-C9uf7qRF.js +0 -33
  128. package/frontend/dist/assets/LoginPage-CfljHYdH.js +0 -2
  129. package/frontend/dist/assets/LoginPage-CfljHYdH.js.map +0 -1
  130. package/frontend/dist/assets/LogsPage-D3CAJzpq.js.map +0 -1
  131. package/frontend/dist/assets/MarketPage-DsyVFNai.js +0 -2
  132. package/frontend/dist/assets/Pagination-BRqqU5Ct.js +0 -2
  133. package/frontend/dist/assets/Pagination-BRqqU5Ct.js.map +0 -1
  134. package/frontend/dist/assets/ServersPage-BO1e0GJ4.js +0 -39
  135. package/frontend/dist/assets/ServersPage-BO1e0GJ4.js.map +0 -1
  136. package/frontend/dist/assets/SettingsPage-_LJt6T_U.js +0 -14
  137. package/frontend/dist/assets/SettingsPage-_LJt6T_U.js.map +0 -1
  138. package/frontend/dist/assets/UsersPage-CLPsZo0-.js +0 -2
  139. package/frontend/dist/assets/UsersPage-CLPsZo0-.js.map +0 -1
  140. package/frontend/dist/assets/clipboard-CoLstiwP.js +0 -2
  141. package/frontend/dist/assets/index-BE6bm3KN.css +0 -1
  142. package/frontend/dist/assets/index-CKByfAIo.js +0 -3
  143. package/frontend/dist/assets/index-CKByfAIo.js.map +0 -1
  144. package/frontend/dist/assets/useCostData-Br7dI3R9.js +0 -2
  145. package/frontend/dist/assets/useCostData-Br7dI3R9.js.map +0 -1
@@ -1,3 +1,4 @@
1
+ import { legacyServerId } from './serverIdentity.js';
1
2
  import fs from 'node:fs';
2
3
  import { randomUUID } from 'node:crypto';
3
4
  import { toStoredToken } from './bearerKeyToken.js';
@@ -27,7 +28,7 @@ function scrubSourceFileSecrets() {
27
28
  let settingsPath = '';
28
29
  try {
29
30
  settingsPath = getSettingsPath();
30
- const raw = JSON.parse(fs.readFileSync(settingsPath, 'utf8'));
31
+ const raw = JSON.parse(fs.readFileSync(settingsPath, 'utf8').replace(/^\uFEFF/, ''));
31
32
  const routing = raw.systemConfig?.routing;
32
33
  const legacyKey = (routing?.bearerAuthKey || '').trim();
33
34
  const hasRawKeys = Array.isArray(raw.bearerKeys) && raw.bearerKeys.some((k) => k.token && !k.tokenHash);
@@ -134,6 +135,7 @@ export async function migrateToDatabase(seedServersAndGroups = true) {
134
135
  : {}),
135
136
  };
136
137
  await serverRepo.create({
138
+ id: config.id ?? legacyServerId(name),
137
139
  name,
138
140
  type: config.type,
139
141
  description: config.description,
@@ -192,6 +194,8 @@ export async function migrateToDatabase(seedServersAndGroups = true) {
192
194
  if (settings.systemConfig) {
193
195
  logger.log('Migrating system configuration...');
194
196
  const systemConfig = {
197
+ dashboardName: settings.systemConfig.dashboardName,
198
+ toolPolicies: settings.systemConfig.toolPolicies,
195
199
  network: settings.systemConfig.network || {},
196
200
  // the legacy bearerAuthKey is migrated to a hashed bearer key below
197
201
  routing: { ...settings.systemConfig.routing, bearerAuthKey: '' },
@@ -1 +1 @@
1
- {"version":3,"file":"migration.js","sourceRoot":"","sources":["../../src/utils/migration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migration.js","sourceRoot":"","sources":["../../src/utils/migration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { createHash } from 'node:crypto';
2
+ // Legacy file entries have no UUID; materialize this ID on the next write/rename.
3
+ export const legacyServerId = (name) => {
4
+ const hash = createHash('sha256').update(`mcphub:server:${name}`).digest('hex');
5
+ return `${hash.slice(0, 8)}-${hash.slice(8, 12)}-8${hash.slice(13, 16)}-8${hash.slice(17, 20)}-${hash.slice(20, 32)}`;
6
+ };
7
+ //# sourceMappingURL=serverIdentity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serverIdentity.js","sourceRoot":"","sources":["../../src/utils/serverIdentity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,kFAAkF;AAClF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,IAAY,EAAU,EAAE;IACrD,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAChF,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;AACxH,CAAC,CAAC"}
@@ -11,6 +11,7 @@ import { Group } from '../db/entities/Group.js';
11
11
  import { expandServerConfig } from '../services/serverConfigEnvironment.js';
12
12
  import { normalizeServerConfigForPersistence } from './serverConfigPersistence.js';
13
13
  import { logger } from './logger.js';
14
+ import { legacyServerId } from './serverIdentity.js';
14
15
  const deriveFingerprint = promisify(pbkdf2);
15
16
  // The declaration may contain client secrets. Salt and stretch it before persistence.
16
17
  const fingerprintDeclaration = async (declaration, previous) => {
@@ -31,6 +32,7 @@ const declarationSchema = z.object({
31
32
  mcpServers: z
32
33
  .record(name, z
33
34
  .object({
35
+ id: z.string().uuid().optional(),
34
36
  type: z.enum(['stdio', 'sse', 'streamable-http', 'openapi']).optional(),
35
37
  url: z.string().optional(),
36
38
  command: z.string().optional(),
@@ -110,7 +112,7 @@ export async function syncSettingsToDatabase() {
110
112
  return;
111
113
  if (mode !== 'upsert' && mode !== 'prune')
112
114
  throw new Error(`Unsupported MCPHUB_SETTINGS_SYNC: ${mode}`);
113
- const declaration = declarationSchema.parse(JSON.parse(fs.readFileSync(getSettingsPath(), 'utf8')));
115
+ const declaration = declarationSchema.parse(JSON.parse(fs.readFileSync(getSettingsPath(), 'utf8').replace(/^\uFEFF/, '')));
114
116
  for (const name of Object.keys(declaration.mcpServers ?? {}))
115
117
  assertSmartRoutingNameAvailable(name);
116
118
  for (const group of declaration.groups ?? [])
@@ -152,6 +154,13 @@ export async function syncSettingsToDatabase() {
152
154
  const serverRepo = manager.getRepository(Server);
153
155
  for (const { serverName, config, signature } of servers) {
154
156
  const existing = await serverRepo.findOneBy({ name: serverName });
157
+ if (existing && config.id && config.id !== existing.id) {
158
+ logger.warn('Settings sync: ignoring declared ID; existing database server ID is retained', {
159
+ serverName,
160
+ declaredId: config.id,
161
+ retainedId: existing.id,
162
+ });
163
+ }
155
164
  const hash = await fingerprintDeclaration(signature, existing?.settingsSyncHash);
156
165
  const sameTarget = existing &&
157
166
  normalizeServerConfigForPersistence(existing).type === config.type &&
@@ -165,6 +174,7 @@ export async function syncSettingsToDatabase() {
165
174
  // missing after a disconnect, but retain the upstream's existing values.
166
175
  const oauth = sameTarget && sameOAuth ? { ...config.oauth, ...existing?.oauth } : config.oauth;
167
176
  const data = {
177
+ id: existing?.id ?? config.id ?? legacyServerId(serverName),
168
178
  name: serverName,
169
179
  enabled: config.enabled ?? true,
170
180
  visibility: config.visibility ?? 'private',
@@ -1 +1 @@
1
- {"version":3,"file":"settingsSync.js","sourceRoot":"","sources":["../../src/utils/settingsSync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settingsSync.js","sourceRoot":"","sources":["../../src/utils/settingsSync.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@ export const getCachedSystemConfig = () => {
16
16
  try {
17
17
  const mtime = fs.statSync(settingsPath).mtime.getTime();
18
18
  if (lastSeenSettingsFileMtime === null || mtime > lastSeenSettingsFileMtime) {
19
- const settings = JSON.parse(fs.readFileSync(settingsPath, 'utf8'));
19
+ const settings = JSON.parse(fs.readFileSync(settingsPath, 'utf8').replace(/^\uFEFF/, ''));
20
20
  cachedSystemConfig = settings.systemConfig ?? null;
21
21
  lastSeenSettingsFileMtime = mtime;
22
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"systemConfigCache.js","sourceRoot":"","sources":["../../src/utils/systemConfigCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9C,IAAI,kBAAkB,GAAwB,IAAI,CAAC;AACnD,yEAAyE;AACzE,8EAA8E;AAC9E,6EAA6E;AAC7E,yEAAyE;AACzE,yBAAyB;AACzB,IAAI,yBAAyB,GAAkB,IAAI,CAAC;AAEpD,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAY,EAAE,CACjD,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAEjG,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAwB,EAAE;IAC7D,yEAAyE;IACzE,sEAAsE;IACtE,IAAI,CAAC,qBAAqB,EAAE,EAAE,CAAC;QAC7B,MAAM,YAAY,GAAG,iBAAiB,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;QACxE,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACxD,IAAI,yBAAyB,KAAK,IAAI,IAAI,KAAK,GAAG,yBAAyB,EAAE,CAAC;gBAC5E,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAgB,CAAC;gBAClF,kBAAkB,GAAG,QAAQ,CAAC,YAAY,IAAI,IAAI,CAAC;gBACnD,yBAAyB,GAAG,KAAK,CAAC;YACpC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,kEAAkE;QACpE,CAAC;IACH,CAAC;IACD,OAAO,kBAAkB,CAAC;AAC5B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,YAA6C,EAAQ,EAAE;IAC3F,kBAAkB,GAAG,YAAY,IAAI,IAAI,CAAC;IAC1C,IAAI,CAAC,qBAAqB,EAAE,EAAE,CAAC;QAC7B,qEAAqE;QACrE,yEAAyE;QACzE,uEAAuE;QACvE,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,iBAAiB,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;YACxE,yBAAyB,GAAG,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACxE,CAAC;QAAC,MAAM,CAAC;YACP,yBAAyB,GAAG,IAAI,CAAC;QACnC,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,IAA2B,EAAE;IACxE,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IACpE,MAAM,YAAY,GAAG,CAAC,MAAM,kBAAkB,EAAE,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;IAC9D,qBAAqB,CAAC,YAAY,CAAC,CAAC;IACpC,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC"}
1
+ {"version":3,"file":"systemConfigCache.js","sourceRoot":"","sources":["../../src/utils/systemConfigCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9C,IAAI,kBAAkB,GAAwB,IAAI,CAAC;AACnD,yEAAyE;AACzE,8EAA8E;AAC9E,6EAA6E;AAC7E,yEAAyE;AACzE,yBAAyB;AACzB,IAAI,yBAAyB,GAAkB,IAAI,CAAC;AAEpD,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAY,EAAE,CACjD,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAEjG,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAwB,EAAE;IAC7D,yEAAyE;IACzE,sEAAsE;IACtE,IAAI,CAAC,qBAAqB,EAAE,EAAE,CAAC;QAC7B,MAAM,YAAY,GAAG,iBAAiB,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;QACxE,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACxD,IAAI,yBAAyB,KAAK,IAAI,IAAI,KAAK,GAAG,yBAAyB,EAAE,CAAC;gBAC5E,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CACzB,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAC9C,CAAC;gBACjB,kBAAkB,GAAG,QAAQ,CAAC,YAAY,IAAI,IAAI,CAAC;gBACnD,yBAAyB,GAAG,KAAK,CAAC;YACpC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,kEAAkE;QACpE,CAAC;IACH,CAAC;IACD,OAAO,kBAAkB,CAAC;AAC5B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,YAA6C,EAAQ,EAAE;IAC3F,kBAAkB,GAAG,YAAY,IAAI,IAAI,CAAC;IAC1C,IAAI,CAAC,qBAAqB,EAAE,EAAE,CAAC;QAC7B,qEAAqE;QACrE,yEAAyE;QACzE,uEAAuE;QACvE,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,iBAAiB,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;YACxE,yBAAyB,GAAG,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACxE,CAAC;QAAC,MAAM,CAAC;YACP,yBAAyB,GAAG,IAAI,CAAC;QACnC,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,IAA2B,EAAE;IACxE,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IACpE,MAAM,YAAY,GAAG,CAAC,MAAM,kBAAkB,EAAE,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;IAC9D,qBAAqB,CAAC,YAAY,CAAC,CAAC;IACpC,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC"}
@@ -1,3 +1,12 @@
1
+ /**
2
+ * Token cost estimation for the Context Footprint feature.
3
+ *
4
+ * Estimates a Definition Cost — the tokens a tool/prompt/resource definition
5
+ * adds to a model's context window — using cl100k_base via gpt-tokenizer.
6
+ * This is an ESTIMATE for relative comparison, not a per-client-model exact
7
+ * count. See docs/adr/0001-cl100k-tokenizer-for-definition-cost.md.
8
+ */
9
+ import { createHash } from 'node:crypto';
1
10
  // Lazily-loaded cl100k encoder (matches the dynamic-import pattern in tokenTruncation.ts,
2
11
  // which is proven to work under the ts-jest ESM preset). Cache the import promise itself
3
12
  // so concurrent callers share a single in-flight import instead of each firing their own.
@@ -13,6 +22,29 @@ export async function countTokens(text) {
13
22
  const encode = await getEncoder();
14
23
  return encode(text).length;
15
24
  }
25
+ // Cache definitions only: arbitrary tool results must not evict the catalog.
26
+ // Fixed-size hashes avoid retaining large schemas. Pending counts are shared too.
27
+ const MAX_DEFINITION_COUNTS = 10000;
28
+ const definitionCounts = new Map();
29
+ export function countDefinitionTokens(text) {
30
+ const key = createHash('sha256').update(text).digest('hex');
31
+ const cached = definitionCounts.get(key);
32
+ if (cached) {
33
+ definitionCounts.delete(key);
34
+ definitionCounts.set(key, cached);
35
+ return cached;
36
+ }
37
+ const pending = countTokens(text).catch((error) => {
38
+ if (definitionCounts.get(key) === pending)
39
+ definitionCounts.delete(key);
40
+ throw error;
41
+ });
42
+ definitionCounts.set(key, pending);
43
+ if (definitionCounts.size > MAX_DEFINITION_COUNTS) {
44
+ definitionCounts.delete(definitionCounts.keys().next().value);
45
+ }
46
+ return pending;
47
+ }
16
48
  /**
17
49
  * Serialize a tool definition to the JSON a client forwards to the model:
18
50
  * name + description + full inputSchema. Deterministic key order.
@@ -44,7 +76,7 @@ export async function itemCostForTool(tool) {
44
76
  return {
45
77
  kind: 'tool',
46
78
  name: tool.name,
47
- cost: await countTokens(serializeToolDefinition(tool)),
79
+ cost: await countDefinitionTokens(serializeToolDefinition(tool)),
48
80
  enabled: isExposed(tool.enabled),
49
81
  };
50
82
  }
@@ -56,7 +88,7 @@ export async function itemCostForPrompt(prompt) {
56
88
  return {
57
89
  kind: 'prompt',
58
90
  name: prompt.name,
59
- cost: await countTokens(serializePromptDefinition(prompt)),
91
+ cost: await countDefinitionTokens(serializePromptDefinition(prompt)),
60
92
  enabled: isExposed(prompt.enabled),
61
93
  };
62
94
  }
@@ -64,7 +96,7 @@ export async function itemCostForResource(resource) {
64
96
  return {
65
97
  kind: 'resource',
66
98
  name: resource.uri,
67
- cost: await countTokens(serializeResourceDefinition(resource)),
99
+ cost: await countDefinitionTokens(serializeResourceDefinition(resource)),
68
100
  enabled: isExposed(resource.enabled),
69
101
  };
70
102
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tokenCost.js","sourceRoot":"","sources":["../../src/utils/tokenCost.ts"],"names":[],"mappings":"AAUA,0FAA0F;AAC1F,yFAAyF;AACzF,0FAA0F;AAC1F,IAAI,cAAc,GAA+C,IAAI,CAAC;AAEtE,SAAS,UAAU;IACjB,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,cAAc,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,uCAAuC;AACvC,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAY;IAC5C,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;IAClC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;AAC7B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CACrC,IAAwD;IAExD,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;QACnC,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;KACpC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,MAA0D;IAE1D,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,EAAE;QACrC,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,EAAE;KAClC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,QAAqE;IAErE,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,GAAG,EAAE,QAAQ,CAAC,GAAG;QACjB,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,EAAE;QACzB,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,EAAE;QACvC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,EAAE;KAClC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,SAAS,GAAG,CAAC,OAA4B,EAAW,EAAE,CAAC,OAAO,KAAK,KAAK,CAAC;AAE/E,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAU;IAC9C,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,IAAI,EAAE,MAAM,WAAW,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QACtD,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;KACjC,CAAC;AACJ,CAAC;AAED,sFAAsF;AACtF,uFAAuF;AACvF,mFAAmF;AACnF,sCAAsC;AACtC,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,MAAsC;IAC5E,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,IAAI,EAAE,MAAM,WAAW,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;QAC1D,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC;KACnC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,QAA0C;IAE1C,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,QAAQ,CAAC,GAAG;QAClB,IAAI,EAAE,MAAM,WAAW,CAAC,2BAA2B,CAAC,QAAQ,CAAC,CAAC;QAC9D,OAAO,EAAE,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC;KACrC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"tokenCost.js","sourceRoot":"","sources":["../../src/utils/tokenCost.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ const selectors = ['username', 'keyId', 'groupId', 'serverId', 'tool'];
2
+ export const findMissingToolPolicyReferences = (rules, ids) => rules.flatMap((rule) => ['serverId', 'keyId', 'groupId'].flatMap((selector) => rule[selector] && !ids[selector].includes(rule[selector])
3
+ ? [{ policyId: rule.id, selector, value: rule[selector] }]
4
+ : []));
5
+ export function validateToolPolicies(value) {
6
+ if (!Array.isArray(value))
7
+ throw new Error('toolPolicies must be an array');
8
+ const ids = new Set();
9
+ for (const rule of value) {
10
+ if (!rule ||
11
+ typeof rule !== 'object' ||
12
+ Array.isArray(rule) ||
13
+ typeof rule.id !== 'string' ||
14
+ !rule.id.trim() ||
15
+ ids.has(rule.id) ||
16
+ !['allow', 'deny'].includes(rule.effect) ||
17
+ Object.keys(rule).some((key) => !['id', 'effect', ...selectors].includes(key)) ||
18
+ selectors.some((key) => rule[key] !== undefined && (typeof rule[key] !== 'string' || !rule[key].trim())))
19
+ throw new Error('Invalid toolPolicies rule: use unique IDs, allow/deny and non-empty selectors');
20
+ ids.add(rule.id);
21
+ }
22
+ }
23
+ export const evaluateToolPolicy = (rules, subject, target, potential = false) => {
24
+ const applicable = rules.filter((rule) => (!rule.username || rule.username === subject.username) &&
25
+ (!rule.keyId || rule.keyId === subject.keyId));
26
+ const matches = (rule) => (!rule.groupId || rule.groupId === target.groupId) &&
27
+ (!rule.serverId || rule.serverId === target.serverId) &&
28
+ (!rule.tool || (potential && target.tool === undefined) || rule.tool === target.tool);
29
+ const deny = applicable.find((rule) => rule.effect === 'deny' && matches(rule) && !(potential && rule.tool));
30
+ if (deny)
31
+ return { decision: 'deny', reason: 'matching-deny', policyId: deny.id };
32
+ const allows = applicable.filter((rule) => rule.effect === 'allow');
33
+ const allow = allows.find(matches);
34
+ if (allows.length && !allow)
35
+ return { decision: 'deny', reason: 'no-matching-allow' };
36
+ return {
37
+ decision: 'allow',
38
+ reason: allow ? 'matching-allow' : 'no-applicable-allow',
39
+ policyId: allow?.id,
40
+ };
41
+ };
42
+ //# sourceMappingURL=toolPolicy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toolPolicy.js","sourceRoot":"","sources":["../../src/utils/toolPolicy.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{r,j as e}from"./framework-vendor-CQFm9vKd.js";import{v as ee,w as te,x as ae,y as se,z as le}from"./index-CKByfAIo.js";import{P as re}from"./Pagination-BRqqU5Ct.js";import{u as ie}from"./i18n-vendor-DVmjrzgW.js";import"./icons-vendor-CkcU1LMA.js";const I=["success","error"],ce=a=>I.includes(a),he=()=>{const{t:a}=ie(),[m,V]=r.useState([]),[n,$]=r.useState(null),[l,J]=r.useState(null),[i,U]=r.useState(null),[o,d]=r.useState(1),[j,G]=r.useState(10),[f,A]=r.useState(!0),[F,N]=r.useState(null),[c,H]=r.useState(null),[K,R]=r.useState(!1),[B,D]=r.useState({}),[p,w]=r.useState(""),[v,k]=r.useState(""),[x,S]=r.useState(""),[g,C]=r.useState(""),[y,L]=r.useState(""),[b,P]=r.useState(""),z=r.useCallback(async()=>{A(!0),N(null);try{const t={...B},[s,u,h]=await Promise.all([ee(o,j,t),te(t),ae()]);s!=null&&s.success&&Array.isArray(s.data)&&(V(s.data),s.pagination&&U(s.pagination)),u!=null&&u.success&&u.data&&$(u.data),h!=null&&h.success&&h.data&&J(h.data)}catch(t){console.error("Error fetching activity data:",t),N(a("activity.fetchError"))}finally{A(!1)}},[o,j,B,a]);r.useEffect(()=>{z()},[z]),r.useEffect(()=>{if(!i)return;const t=Math.max(1,i.totalPages||1);o>t&&d(t)},[i,o]);const W=async t=>{try{const s=await le(t.id);s!=null&&s.success&&s.data&&(H(s.data),R(!0))}catch(s){console.error("Error fetching activity details:",s)}},_=async()=>{var t;if(window.confirm(a("activity.confirmCleanup")))try{const s=await se(30);s!=null&&s.success&&(alert(a("activity.cleanupSuccess",{count:((t=s.data)==null?void 0:t.deletedCount)||0})),z())}catch(s){console.error("Error cleaning up activities:",s),alert(a("activity.cleanupError"))}},q=()=>{const t={};p&&(t.server=p),v&&(t.tool=v),x&&ce(x)&&(t.status=x),g&&(t.group=g),y&&(t.username=y),b&&(t.keyName=b),D(t),d(1)},O=()=>{w(""),k(""),S(""),C(""),L(""),P(""),D({}),d(1)},M=t=>t<1e3?`${t}ms`:t<6e4?`${(t/1e3).toFixed(2)}s`:`${(t/6e4).toFixed(2)}m`,E=t=>new Date(t).toLocaleString(),T=t=>{if(!t)return null;try{return JSON.parse(t)}catch{return t}},Q=()=>n?e.jsx("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-3 mb-4",children:[{label:a("activity.totalCalls"),value:n.totalCalls,tone:"default"},{label:a("activity.successCount"),value:n.successCount,tone:"ok"},{label:a("activity.errorCount"),value:n.errorCount,tone:"err"},{label:a("activity.avgDuration"),value:M(n.avgDuration),tone:"default"}].map(t=>e.jsxs("div",{className:"hub-card",style:{padding:"12px 14px"},children:[e.jsx("div",{className:"text-[12px]",style:{color:"var(--hub-ink-3)"},children:t.label}),e.jsx("div",{className:"hub-num",style:{fontSize:22,fontWeight:500,lineHeight:1.1,marginTop:6,letterSpacing:"-0.02em",color:t.tone==="ok"?"oklch(0.4 0.13 145)":t.tone==="err"?"oklch(0.45 0.18 25)":"var(--hub-ink)"},children:t.value})]},t.label))}):null,X=()=>e.jsx("div",{className:"hub-card px-4 py-3 mb-4",children:e.jsxs("div",{className:"flex flex-wrap gap-3 items-end",children:[e.jsxs("div",{className:"flex-1 min-w-[140px]",children:[e.jsx("label",{className:"sr-only",htmlFor:"activity-server",children:a("activity.server")}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{id:"activity-server",type:"text",value:p,onChange:t=>w(t.target.value),placeholder:a("activity.searchServer"),className:"hub-input pr-9",list:"server-options"}),p&&e.jsx("button",{onClick:()=>w(""),className:"absolute inset-y-0 right-2 flex items-center text-gray-400 hover:text-gray-600 dark:hover:text-gray-300","aria-label":a("common.clear"),type:"button",children:e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"h-4 w-4",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})})]}),(l==null?void 0:l.servers)&&e.jsx("datalist",{id:"server-options",children:l.servers.map(t=>e.jsx("option",{value:t},t))})]}),e.jsxs("div",{className:"flex-1 min-w-[140px]",children:[e.jsx("label",{className:"sr-only",htmlFor:"activity-tool",children:a("activity.tool")}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{id:"activity-tool",type:"text",value:v,onChange:t=>k(t.target.value),placeholder:a("activity.searchTool"),className:"hub-input pr-9",list:"tool-options"}),v&&e.jsx("button",{onClick:()=>k(""),className:"absolute inset-y-0 right-2 flex items-center text-gray-400 hover:text-gray-600 dark:hover:text-gray-300","aria-label":a("common.clear"),type:"button",children:e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"h-4 w-4",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})})]}),(l==null?void 0:l.tools)&&e.jsx("datalist",{id:"tool-options",children:l.tools.map(t=>e.jsx("option",{value:t},t))})]}),e.jsxs("div",{className:"flex-1 min-w-[140px]",children:[e.jsx("label",{className:"sr-only",htmlFor:"activity-status",children:a("activity.status")}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{id:"activity-status",type:"text",value:x,onChange:t=>S(t.target.value.toLowerCase()),placeholder:a("activity.searchStatus"),className:"hub-input pr-9",list:"activity-status-options"}),x&&e.jsx("button",{onClick:()=>S(""),className:"absolute inset-y-0 right-2 flex items-center text-gray-400 hover:text-gray-600 dark:hover:text-gray-300","aria-label":a("common.clear"),type:"button",children:e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"h-4 w-4",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})})]}),e.jsx("datalist",{id:"activity-status-options",children:I.map(t=>e.jsx("option",{value:t},t))})]}),e.jsxs("div",{className:"flex-1 min-w-[140px]",children:[e.jsx("label",{className:"sr-only",htmlFor:"activity-group",children:a("activity.group")}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{id:"activity-group",type:"text",value:g,onChange:t=>C(t.target.value),placeholder:a("activity.searchGroup"),className:"hub-input pr-9",list:"group-options"}),g&&e.jsx("button",{onClick:()=>C(""),className:"absolute inset-y-0 right-2 flex items-center text-gray-400 hover:text-gray-600 dark:hover:text-gray-300","aria-label":a("common.clear"),type:"button",children:e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"h-4 w-4",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})})]}),(l==null?void 0:l.groups)&&e.jsx("datalist",{id:"group-options",children:l.groups.map(t=>e.jsx("option",{value:t},t))})]}),e.jsxs("div",{className:"flex-1 min-w-[140px]",children:[e.jsx("label",{className:"sr-only",htmlFor:"activity-username",children:a("activity.user")}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{id:"activity-username",type:"text",value:y,onChange:t=>L(t.target.value),placeholder:a("activity.searchUsername"),className:"hub-input pr-9",list:"username-options"}),y&&e.jsx("button",{onClick:()=>L(""),className:"absolute inset-y-0 right-2 flex items-center text-gray-400 hover:text-gray-600 dark:hover:text-gray-300","aria-label":a("common.clear"),type:"button",children:e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"h-4 w-4",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})})]}),(l==null?void 0:l.usernames)&&e.jsx("datalist",{id:"username-options",children:l.usernames.map(t=>e.jsx("option",{value:t},t))})]}),e.jsxs("div",{className:"flex-1 min-w-[140px]",children:[e.jsx("label",{className:"sr-only",htmlFor:"activity-keyname",children:a("activity.keyName")}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{id:"activity-keyname",type:"text",value:b,onChange:t=>P(t.target.value),placeholder:a("activity.searchKeyName"),className:"hub-input pr-9",list:"keyname-options"}),b&&e.jsx("button",{onClick:()=>P(""),className:"absolute inset-y-0 right-2 flex items-center text-gray-400 hover:text-gray-600 dark:hover:text-gray-300","aria-label":a("common.clear"),type:"button",children:e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"h-4 w-4",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})})]}),(l==null?void 0:l.keyNames)&&e.jsx("datalist",{id:"keyname-options",children:l.keyNames.map(t=>e.jsx("option",{value:t},t))})]}),e.jsxs("div",{className:"flex-shrink-0 flex items-center gap-2",children:[e.jsxs("button",{onClick:q,className:"hub-btn primary whitespace-nowrap",children:[e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"h-3.5 w-3.5",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z",clipRule:"evenodd"})}),a("common.search")]}),e.jsx("button",{onClick:O,className:"hub-btn whitespace-nowrap",children:a("common.clear")})]})]})}),Y=()=>m.length===0?e.jsx("div",{className:"hub-card p-10 text-center",style:{color:"var(--hub-ink-3)"},children:a("activity.noData")}):e.jsx("div",{className:"hub-card overflow-hidden",children:e.jsx("div",{className:"overflow-x-auto",children:e.jsxs("table",{className:"min-w-full",children:[e.jsx("thead",{style:{background:"var(--hub-bg-2)"},children:e.jsx("tr",{children:[a("activity.timestamp"),a("activity.server"),a("activity.tool"),a("activity.duration"),a("activity.status"),a("activity.group"),a("activity.user"),a("activity.key"),a("activity.sourceIp"),a("common.actions")].map(t=>e.jsx("th",{className:"hub-mono",style:{padding:"9px 14px",textAlign:"left",fontSize:11,color:"var(--hub-ink-3)",textTransform:"uppercase",letterSpacing:"0.08em",fontWeight:500},children:t},t))})}),e.jsx("tbody",{children:m.map(t=>e.jsxs("tr",{className:"transition-colors hover:bg-[var(--hub-surface-hover)]",style:{borderTop:"1px solid var(--hub-line-2)"},children:[e.jsx("td",{className:"hub-mono whitespace-nowrap",style:{padding:"10px 14px",fontSize:12,color:"var(--hub-ink-2)"},children:E(t.timestamp)}),e.jsx("td",{style:{padding:"10px 14px"},children:e.jsx("span",{className:"hub-tag",children:t.server})}),e.jsx("td",{style:{padding:"10px 14px"},children:e.jsx("span",{className:"hub-tag accent",children:t.tool})}),e.jsx("td",{className:"hub-mono hub-num whitespace-nowrap",style:{padding:"10px 14px",fontSize:12,color:"var(--hub-ink-2)"},children:M(t.duration)}),e.jsx("td",{style:{padding:"10px 14px"},className:"whitespace-nowrap",children:e.jsxs("span",{className:`hub-status ${t.status==="success"?"ok":"err"}`,children:[e.jsx("span",{className:"hub-dot"}),t.status==="success"?a("activity.statusSuccess"):a("activity.statusError")]})}),e.jsx("td",{style:{padding:"10px 14px",fontSize:12,color:"var(--hub-ink-3)"},children:t.group||"—"}),e.jsx("td",{style:{padding:"10px 14px",fontSize:12,color:"var(--hub-ink-3)"},children:t.username||"—"}),e.jsx("td",{style:{padding:"10px 14px",fontSize:12,color:"var(--hub-ink-3)"},children:t.keyName||"—"}),e.jsx("td",{className:"hub-mono whitespace-nowrap",style:{padding:"10px 14px",fontSize:12,color:"var(--hub-ink-3)"},children:t.sourceIp||"—"}),e.jsx("td",{style:{padding:"10px 14px"},children:e.jsx("button",{onClick:()=>W(t),className:"hub-btn ghost sm",style:{color:"var(--hub-accent)"},children:a("common.view")})})]},t.id))})]})})}),Z=()=>{if(!K||!c)return null;const t=T(c.input),s=T(c.output);return e.jsx("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center z-50",children:e.jsxs("div",{className:"hub-card max-w-4xl w-full mx-4 max-h-[90vh] overflow-hidden",style:{boxShadow:"0 8px 24px rgba(0,0,0,0.12)"},children:[e.jsxs("div",{className:"flex items-center justify-between px-5 py-3",style:{borderBottom:"1px solid var(--hub-line-2)"},children:[e.jsx("h3",{className:"hub-card-title",children:a("activity.details")}),e.jsx("button",{onClick:()=>R(!1),className:"hub-icon-btn sm","aria-label":"close",children:e.jsx("svg",{className:"h-3.5 w-3.5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),e.jsxs("div",{className:"px-6 py-4 overflow-y-auto max-h-[calc(90vh-120px)]",children:[e.jsxs("div",{className:"grid grid-cols-2 gap-4 mb-4",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400",children:a("activity.timestamp")}),e.jsx("p",{className:"text-gray-900 dark:text-white",children:E(c.timestamp)})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400",children:a("activity.duration")}),e.jsx("p",{className:"text-gray-900 dark:text-white",children:M(c.duration)})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400",children:a("activity.server")}),e.jsx("p",{className:"text-gray-900 dark:text-white font-mono",children:c.server})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400",children:a("activity.tool")}),e.jsx("p",{className:"text-gray-900 dark:text-white font-mono",children:c.tool})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400",children:a("activity.status")}),e.jsx("span",{className:`px-2 py-1 rounded text-xs font-medium ${c.status==="success"?"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-200":"bg-red-100 text-red-800 dark:bg-red-900 dark:text-red-200"}`,children:c.status==="success"?a("activity.statusSuccess"):a("activity.statusError")})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400",children:a("activity.group")}),e.jsx("p",{className:"text-gray-900 dark:text-white",children:c.group||"-"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400",children:a("activity.user")}),e.jsx("p",{className:"text-gray-900 dark:text-white",children:c.username||"-"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400",children:a("activity.sourceIp")}),e.jsx("p",{className:"text-gray-900 dark:text-white font-mono",children:c.sourceIp||"-"})]}),c.keyName&&e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400",children:a("activity.key")}),e.jsx("p",{className:"text-gray-900 dark:text-white",children:c.keyName})]})]}),c.errorMessage&&e.jsxs("div",{className:"mb-4",children:[e.jsx("label",{className:"block text-sm font-medium text-red-500 mb-1",children:a("activity.errorMessage")}),e.jsx("div",{className:"bg-red-50 dark:bg-red-900/20 rounded p-3 text-sm text-red-800 dark:text-red-200",children:c.errorMessage})]}),t&&e.jsxs("div",{className:"mb-4",children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400 mb-1",children:a("activity.input")}),e.jsx("pre",{className:"bg-gray-100 dark:bg-gray-700 rounded p-3 text-sm overflow-x-auto max-h-64",children:typeof t=="string"?t:JSON.stringify(t,null,2)})]}),s&&e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400 mb-1",children:a("activity.output")}),e.jsx("pre",{className:"bg-gray-100 dark:bg-gray-700 rounded p-3 text-sm overflow-x-auto max-h-64",children:typeof s=="string"?s:JSON.stringify(s,null,2)})]})]})]})})};return e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-end justify-between gap-4 mb-6",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"hub-h1",children:a("activity.title")}),e.jsxs("p",{className:"hub-sub",children:[e.jsx("span",{className:"hub-num",children:(i==null?void 0:i.total)??m.length})," entries"]})]}),e.jsxs("button",{onClick:_,className:"hub-btn danger",children:[e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"h-3.5 w-3.5",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M9 2a1 1 0 00-.894.553L7.382 4H4a1 1 0 000 2v10a2 2 0 002 2h8a2 2 0 002-2V6a1 1 0 100-2h-3.382l-.724-1.447A1 1 0 0011 2H9zM7 8a1 1 0 012 0v6a1 1 0 11-2 0V8zm5-1a1 1 0 00-1 1v6a1 1 0 102 0V8a1 1 0 00-1-1z",clipRule:"evenodd"})}),a("activity.cleanup")]})]}),F&&e.jsxs("div",{className:"hub-card flex items-center justify-between gap-3 mb-4",style:{padding:"10px 14px",borderColor:"oklch(0.85 0.1 25)",background:"oklch(0.97 0.03 25)",color:"oklch(0.4 0.18 25)"},children:[e.jsx("span",{className:"truncate text-[13px]",children:F}),e.jsx("button",{className:"hub-icon-btn sm",onClick:()=>N(null),"aria-label":"close",children:e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"h-3 w-3",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})})]}),f&&m.length===0?e.jsx("div",{className:"hub-card p-10 text-center",style:{color:"var(--hub-ink-3)"},children:a("app.loading")}):e.jsxs(e.Fragment,{children:[Q(),X(),Y(),e.jsxs("div",{className:"flex items-center mt-6",children:[e.jsx("div",{className:"flex-[2] text-sm text-gray-500 dark:text-gray-400",children:i&&a("common.showing",{start:(i.page-1)*i.limit+1,end:Math.min(i.page*i.limit,i.total),total:i.total})}),e.jsx("div",{className:"flex-[4] flex justify-center",children:i&&i.totalPages>1&&e.jsx(re,{currentPage:o,totalPages:i.totalPages,onPageChange:d,disabled:f})}),e.jsxs("div",{className:"flex-[2] flex items-center justify-end space-x-2",children:[e.jsxs("label",{htmlFor:"perPage",className:"text-sm text-gray-500 dark:text-gray-400",children:[a("common.itemsPerPage"),":"]}),e.jsxs("select",{id:"perPage",value:j,onChange:t=>{G(Number(t.target.value)),d(1)},disabled:f,className:"border border-gray-300 dark:border-gray-600 rounded p-1 text-sm dark:bg-gray-700 dark:text-white outline-none disabled:opacity-50 disabled:cursor-not-allowed",children:[e.jsx("option",{value:10,children:"10"}),e.jsx("option",{value:20,children:"20"}),e.jsx("option",{value:50,children:"50"}),e.jsx("option",{value:100,children:"100"})]})]})]})]}),Z()]})};export{he as default};
2
- //# sourceMappingURL=ActivityPage-C68nRD4J.js.map
1
+ import{r,j as e}from"./framework-vendor-CQFm9vKd.js";import{y as ee,z as te,A as ae,B as se,C as le}from"./index-CkSmxNPW.js";import{P as re}from"./Pagination-D99WHhBx.js";import{u as ie}from"./i18n-vendor-DVmjrzgW.js";import"./icons-vendor-CyAS6fj0.js";const I=["success","error"],ce=a=>I.includes(a),he=()=>{const{t:a}=ie(),[m,V]=r.useState([]),[n,$]=r.useState(null),[l,J]=r.useState(null),[i,U]=r.useState(null),[o,d]=r.useState(1),[j,G]=r.useState(10),[f,A]=r.useState(!0),[F,N]=r.useState(null),[c,H]=r.useState(null),[K,R]=r.useState(!1),[B,D]=r.useState({}),[p,w]=r.useState(""),[v,k]=r.useState(""),[x,S]=r.useState(""),[g,C]=r.useState(""),[y,L]=r.useState(""),[b,P]=r.useState(""),z=r.useCallback(async()=>{A(!0),N(null);try{const t={...B},[s,u,h]=await Promise.all([ee(o,j,t),te(t),ae()]);s!=null&&s.success&&Array.isArray(s.data)&&(V(s.data),s.pagination&&U(s.pagination)),u!=null&&u.success&&u.data&&$(u.data),h!=null&&h.success&&h.data&&J(h.data)}catch(t){console.error("Error fetching activity data:",t),N(a("activity.fetchError"))}finally{A(!1)}},[o,j,B,a]);r.useEffect(()=>{z()},[z]),r.useEffect(()=>{if(!i)return;const t=Math.max(1,i.totalPages||1);o>t&&d(t)},[i,o]);const W=async t=>{try{const s=await le(t.id);s!=null&&s.success&&s.data&&(H(s.data),R(!0))}catch(s){console.error("Error fetching activity details:",s)}},_=async()=>{var t;if(window.confirm(a("activity.confirmCleanup")))try{const s=await se(30);s!=null&&s.success&&(alert(a("activity.cleanupSuccess",{count:((t=s.data)==null?void 0:t.deletedCount)||0})),z())}catch(s){console.error("Error cleaning up activities:",s),alert(a("activity.cleanupError"))}},q=()=>{const t={};p&&(t.server=p),v&&(t.tool=v),x&&ce(x)&&(t.status=x),g&&(t.group=g),y&&(t.username=y),b&&(t.keyName=b),D(t),d(1)},O=()=>{w(""),k(""),S(""),C(""),L(""),P(""),D({}),d(1)},M=t=>t<1e3?`${t}ms`:t<6e4?`${(t/1e3).toFixed(2)}s`:`${(t/6e4).toFixed(2)}m`,E=t=>new Date(t).toLocaleString(),T=t=>{if(!t)return null;try{return JSON.parse(t)}catch{return t}},Q=()=>n?e.jsx("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-3 mb-4",children:[{label:a("activity.totalCalls"),value:n.totalCalls,tone:"default"},{label:a("activity.successCount"),value:n.successCount,tone:"ok"},{label:a("activity.errorCount"),value:n.errorCount,tone:"err"},{label:a("activity.avgDuration"),value:M(n.avgDuration),tone:"default"}].map(t=>e.jsxs("div",{className:"hub-card",style:{padding:"12px 14px"},children:[e.jsx("div",{className:"text-[12px]",style:{color:"var(--hub-ink-3)"},children:t.label}),e.jsx("div",{className:"hub-num",style:{fontSize:22,fontWeight:500,lineHeight:1.1,marginTop:6,letterSpacing:"-0.02em",color:t.tone==="ok"?"oklch(0.4 0.13 145)":t.tone==="err"?"oklch(0.45 0.18 25)":"var(--hub-ink)"},children:t.value})]},t.label))}):null,X=()=>e.jsx("div",{className:"hub-card px-4 py-3 mb-4",children:e.jsxs("div",{className:"flex flex-wrap gap-3 items-end",children:[e.jsxs("div",{className:"flex-1 min-w-[140px]",children:[e.jsx("label",{className:"sr-only",htmlFor:"activity-server",children:a("activity.server")}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{id:"activity-server",type:"text",value:p,onChange:t=>w(t.target.value),placeholder:a("activity.searchServer"),className:"hub-input pr-9",list:"server-options"}),p&&e.jsx("button",{onClick:()=>w(""),className:"absolute inset-y-0 right-2 flex items-center text-gray-400 hover:text-gray-600 dark:hover:text-gray-300","aria-label":a("common.clear"),type:"button",children:e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"h-4 w-4",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})})]}),(l==null?void 0:l.servers)&&e.jsx("datalist",{id:"server-options",children:l.servers.map(t=>e.jsx("option",{value:t},t))})]}),e.jsxs("div",{className:"flex-1 min-w-[140px]",children:[e.jsx("label",{className:"sr-only",htmlFor:"activity-tool",children:a("activity.tool")}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{id:"activity-tool",type:"text",value:v,onChange:t=>k(t.target.value),placeholder:a("activity.searchTool"),className:"hub-input pr-9",list:"tool-options"}),v&&e.jsx("button",{onClick:()=>k(""),className:"absolute inset-y-0 right-2 flex items-center text-gray-400 hover:text-gray-600 dark:hover:text-gray-300","aria-label":a("common.clear"),type:"button",children:e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"h-4 w-4",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})})]}),(l==null?void 0:l.tools)&&e.jsx("datalist",{id:"tool-options",children:l.tools.map(t=>e.jsx("option",{value:t},t))})]}),e.jsxs("div",{className:"flex-1 min-w-[140px]",children:[e.jsx("label",{className:"sr-only",htmlFor:"activity-status",children:a("activity.status")}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{id:"activity-status",type:"text",value:x,onChange:t=>S(t.target.value.toLowerCase()),placeholder:a("activity.searchStatus"),className:"hub-input pr-9",list:"activity-status-options"}),x&&e.jsx("button",{onClick:()=>S(""),className:"absolute inset-y-0 right-2 flex items-center text-gray-400 hover:text-gray-600 dark:hover:text-gray-300","aria-label":a("common.clear"),type:"button",children:e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"h-4 w-4",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})})]}),e.jsx("datalist",{id:"activity-status-options",children:I.map(t=>e.jsx("option",{value:t},t))})]}),e.jsxs("div",{className:"flex-1 min-w-[140px]",children:[e.jsx("label",{className:"sr-only",htmlFor:"activity-group",children:a("activity.group")}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{id:"activity-group",type:"text",value:g,onChange:t=>C(t.target.value),placeholder:a("activity.searchGroup"),className:"hub-input pr-9",list:"group-options"}),g&&e.jsx("button",{onClick:()=>C(""),className:"absolute inset-y-0 right-2 flex items-center text-gray-400 hover:text-gray-600 dark:hover:text-gray-300","aria-label":a("common.clear"),type:"button",children:e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"h-4 w-4",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})})]}),(l==null?void 0:l.groups)&&e.jsx("datalist",{id:"group-options",children:l.groups.map(t=>e.jsx("option",{value:t},t))})]}),e.jsxs("div",{className:"flex-1 min-w-[140px]",children:[e.jsx("label",{className:"sr-only",htmlFor:"activity-username",children:a("activity.user")}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{id:"activity-username",type:"text",value:y,onChange:t=>L(t.target.value),placeholder:a("activity.searchUsername"),className:"hub-input pr-9",list:"username-options"}),y&&e.jsx("button",{onClick:()=>L(""),className:"absolute inset-y-0 right-2 flex items-center text-gray-400 hover:text-gray-600 dark:hover:text-gray-300","aria-label":a("common.clear"),type:"button",children:e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"h-4 w-4",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})})]}),(l==null?void 0:l.usernames)&&e.jsx("datalist",{id:"username-options",children:l.usernames.map(t=>e.jsx("option",{value:t},t))})]}),e.jsxs("div",{className:"flex-1 min-w-[140px]",children:[e.jsx("label",{className:"sr-only",htmlFor:"activity-keyname",children:a("activity.keyName")}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{id:"activity-keyname",type:"text",value:b,onChange:t=>P(t.target.value),placeholder:a("activity.searchKeyName"),className:"hub-input pr-9",list:"keyname-options"}),b&&e.jsx("button",{onClick:()=>P(""),className:"absolute inset-y-0 right-2 flex items-center text-gray-400 hover:text-gray-600 dark:hover:text-gray-300","aria-label":a("common.clear"),type:"button",children:e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"h-4 w-4",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})})]}),(l==null?void 0:l.keyNames)&&e.jsx("datalist",{id:"keyname-options",children:l.keyNames.map(t=>e.jsx("option",{value:t},t))})]}),e.jsxs("div",{className:"flex-shrink-0 flex items-center gap-2",children:[e.jsxs("button",{onClick:q,className:"hub-btn primary whitespace-nowrap",children:[e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"h-3.5 w-3.5",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z",clipRule:"evenodd"})}),a("common.search")]}),e.jsx("button",{onClick:O,className:"hub-btn whitespace-nowrap",children:a("common.clear")})]})]})}),Y=()=>m.length===0?e.jsx("div",{className:"hub-card p-10 text-center",style:{color:"var(--hub-ink-3)"},children:a("activity.noData")}):e.jsx("div",{className:"hub-card overflow-hidden",children:e.jsx("div",{className:"overflow-x-auto",children:e.jsxs("table",{className:"min-w-full",children:[e.jsx("thead",{style:{background:"var(--hub-bg-2)"},children:e.jsx("tr",{children:[a("activity.timestamp"),a("activity.server"),a("activity.tool"),a("activity.duration"),a("activity.status"),a("activity.group"),a("activity.user"),a("activity.key"),a("activity.sourceIp"),a("common.actions")].map(t=>e.jsx("th",{className:"hub-mono",style:{padding:"9px 14px",textAlign:"left",fontSize:11,color:"var(--hub-ink-3)",textTransform:"uppercase",letterSpacing:"0.08em",fontWeight:500},children:t},t))})}),e.jsx("tbody",{children:m.map(t=>e.jsxs("tr",{className:"transition-colors hover:bg-[var(--hub-surface-hover)]",style:{borderTop:"1px solid var(--hub-line-2)"},children:[e.jsx("td",{className:"hub-mono whitespace-nowrap",style:{padding:"10px 14px",fontSize:12,color:"var(--hub-ink-2)"},children:E(t.timestamp)}),e.jsx("td",{style:{padding:"10px 14px"},children:e.jsx("span",{className:"hub-tag",children:t.server})}),e.jsx("td",{style:{padding:"10px 14px"},children:e.jsx("span",{className:"hub-tag accent",children:t.tool})}),e.jsx("td",{className:"hub-mono hub-num whitespace-nowrap",style:{padding:"10px 14px",fontSize:12,color:"var(--hub-ink-2)"},children:M(t.duration)}),e.jsx("td",{style:{padding:"10px 14px"},className:"whitespace-nowrap",children:e.jsxs("span",{className:`hub-status ${t.status==="success"?"ok":"err"}`,children:[e.jsx("span",{className:"hub-dot"}),t.status==="success"?a("activity.statusSuccess"):a("activity.statusError")]})}),e.jsx("td",{style:{padding:"10px 14px",fontSize:12,color:"var(--hub-ink-3)"},children:t.group||"—"}),e.jsx("td",{style:{padding:"10px 14px",fontSize:12,color:"var(--hub-ink-3)"},children:t.username||"—"}),e.jsx("td",{style:{padding:"10px 14px",fontSize:12,color:"var(--hub-ink-3)"},children:t.keyName||"—"}),e.jsx("td",{className:"hub-mono whitespace-nowrap",style:{padding:"10px 14px",fontSize:12,color:"var(--hub-ink-3)"},children:t.sourceIp||"—"}),e.jsx("td",{style:{padding:"10px 14px"},children:e.jsx("button",{onClick:()=>W(t),className:"hub-btn ghost sm",style:{color:"var(--hub-accent)"},children:a("common.view")})})]},t.id))})]})})}),Z=()=>{if(!K||!c)return null;const t=T(c.input),s=T(c.output);return e.jsx("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center z-50",children:e.jsxs("div",{className:"hub-card max-w-4xl w-full mx-4 max-h-[90vh] overflow-hidden",style:{boxShadow:"0 8px 24px rgba(0,0,0,0.12)"},children:[e.jsxs("div",{className:"flex items-center justify-between px-5 py-3",style:{borderBottom:"1px solid var(--hub-line-2)"},children:[e.jsx("h3",{className:"hub-card-title",children:a("activity.details")}),e.jsx("button",{onClick:()=>R(!1),className:"hub-icon-btn sm","aria-label":"close",children:e.jsx("svg",{className:"h-3.5 w-3.5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),e.jsxs("div",{className:"px-6 py-4 overflow-y-auto max-h-[calc(90vh-120px)]",children:[e.jsxs("div",{className:"grid grid-cols-2 gap-4 mb-4",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400",children:a("activity.timestamp")}),e.jsx("p",{className:"text-gray-900 dark:text-white",children:E(c.timestamp)})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400",children:a("activity.duration")}),e.jsx("p",{className:"text-gray-900 dark:text-white",children:M(c.duration)})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400",children:a("activity.server")}),e.jsx("p",{className:"text-gray-900 dark:text-white font-mono",children:c.server})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400",children:a("activity.tool")}),e.jsx("p",{className:"text-gray-900 dark:text-white font-mono",children:c.tool})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400",children:a("activity.status")}),e.jsx("span",{className:`px-2 py-1 rounded text-xs font-medium ${c.status==="success"?"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-200":"bg-red-100 text-red-800 dark:bg-red-900 dark:text-red-200"}`,children:c.status==="success"?a("activity.statusSuccess"):a("activity.statusError")})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400",children:a("activity.group")}),e.jsx("p",{className:"text-gray-900 dark:text-white",children:c.group||"-"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400",children:a("activity.user")}),e.jsx("p",{className:"text-gray-900 dark:text-white",children:c.username||"-"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400",children:a("activity.sourceIp")}),e.jsx("p",{className:"text-gray-900 dark:text-white font-mono",children:c.sourceIp||"-"})]}),c.keyName&&e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400",children:a("activity.key")}),e.jsx("p",{className:"text-gray-900 dark:text-white",children:c.keyName})]})]}),c.errorMessage&&e.jsxs("div",{className:"mb-4",children:[e.jsx("label",{className:"block text-sm font-medium text-red-500 mb-1",children:a("activity.errorMessage")}),e.jsx("div",{className:"bg-red-50 dark:bg-red-900/20 rounded p-3 text-sm text-red-800 dark:text-red-200",children:c.errorMessage})]}),t&&e.jsxs("div",{className:"mb-4",children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400 mb-1",children:a("activity.input")}),e.jsx("pre",{className:"bg-gray-100 dark:bg-gray-700 rounded p-3 text-sm overflow-x-auto max-h-64",children:typeof t=="string"?t:JSON.stringify(t,null,2)})]}),s&&e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-500 dark:text-gray-400 mb-1",children:a("activity.output")}),e.jsx("pre",{className:"bg-gray-100 dark:bg-gray-700 rounded p-3 text-sm overflow-x-auto max-h-64",children:typeof s=="string"?s:JSON.stringify(s,null,2)})]})]})]})})};return e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-end justify-between gap-4 mb-6",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"hub-h1",children:a("activity.title")}),e.jsxs("p",{className:"hub-sub",children:[e.jsx("span",{className:"hub-num",children:(i==null?void 0:i.total)??m.length})," entries"]})]}),e.jsxs("button",{onClick:_,className:"hub-btn danger",children:[e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"h-3.5 w-3.5",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M9 2a1 1 0 00-.894.553L7.382 4H4a1 1 0 000 2v10a2 2 0 002 2h8a2 2 0 002-2V6a1 1 0 100-2h-3.382l-.724-1.447A1 1 0 0011 2H9zM7 8a1 1 0 012 0v6a1 1 0 11-2 0V8zm5-1a1 1 0 00-1 1v6a1 1 0 102 0V8a1 1 0 00-1-1z",clipRule:"evenodd"})}),a("activity.cleanup")]})]}),F&&e.jsxs("div",{className:"hub-card flex items-center justify-between gap-3 mb-4",style:{padding:"10px 14px",borderColor:"oklch(0.85 0.1 25)",background:"oklch(0.97 0.03 25)",color:"oklch(0.4 0.18 25)"},children:[e.jsx("span",{className:"truncate text-[13px]",children:F}),e.jsx("button",{className:"hub-icon-btn sm",onClick:()=>N(null),"aria-label":"close",children:e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"h-3 w-3",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})})]}),f&&m.length===0?e.jsx("div",{className:"hub-card p-10 text-center",style:{color:"var(--hub-ink-3)"},children:a("app.loading")}):e.jsxs(e.Fragment,{children:[Q(),X(),Y(),e.jsxs("div",{className:"flex items-center mt-6",children:[e.jsx("div",{className:"flex-[2] text-sm text-gray-500 dark:text-gray-400",children:i&&a("common.showing",{start:(i.page-1)*i.limit+1,end:Math.min(i.page*i.limit,i.total),total:i.total})}),e.jsx("div",{className:"flex-[4] flex justify-center",children:i&&i.totalPages>1&&e.jsx(re,{currentPage:o,totalPages:i.totalPages,onPageChange:d,disabled:f})}),e.jsxs("div",{className:"flex-[2] flex items-center justify-end space-x-2",children:[e.jsxs("label",{htmlFor:"perPage",className:"text-sm text-gray-500 dark:text-gray-400",children:[a("common.itemsPerPage"),":"]}),e.jsxs("select",{id:"perPage",value:j,onChange:t=>{G(Number(t.target.value)),d(1)},disabled:f,className:"border border-gray-300 dark:border-gray-600 rounded p-1 text-sm dark:bg-gray-700 dark:text-white outline-none disabled:opacity-50 disabled:cursor-not-allowed",children:[e.jsx("option",{value:10,children:"10"}),e.jsx("option",{value:20,children:"20"}),e.jsx("option",{value:50,children:"50"}),e.jsx("option",{value:100,children:"100"})]})]})]})]}),Z()]})};export{he as default};
2
+ //# sourceMappingURL=ActivityPage-C8Zj4FeE.js.map