@samanhappy/mcphub 0.8.5 → 0.8.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/config/index.js +5 -4
- package/dist/config/index.js.map +1 -1
- package/dist/controllers/authController.js +27 -5
- package/dist/controllers/authController.js.map +1 -1
- package/dist/controllers/configController.js +12 -0
- package/dist/controllers/configController.js.map +1 -1
- package/dist/controllers/groupController.js +125 -3
- package/dist/controllers/groupController.js.map +1 -1
- package/dist/controllers/serverController.js +2 -1
- package/dist/controllers/serverController.js.map +1 -1
- package/dist/controllers/userController.js +5 -0
- package/dist/controllers/userController.js.map +1 -1
- package/dist/middlewares/auth.js +18 -0
- package/dist/middlewares/auth.js.map +1 -1
- package/dist/middlewares/i18n.js +36 -0
- package/dist/middlewares/i18n.js.map +1 -0
- package/dist/middlewares/index.js +3 -0
- package/dist/middlewares/index.js.map +1 -1
- package/dist/routes/index.js +5 -1
- package/dist/routes/index.js.map +1 -1
- package/dist/server.js +4 -0
- package/dist/server.js.map +1 -1
- package/dist/services/dataService.js +3 -3
- package/dist/services/dataService.js.map +1 -1
- package/dist/services/groupService.js +81 -10
- package/dist/services/groupService.js.map +1 -1
- package/dist/services/mcpService.js +26 -8
- package/dist/services/mcpService.js.map +1 -1
- package/dist/services/registry.js +26 -10
- package/dist/services/registry.js.map +1 -1
- package/dist/utils/i18n.js +34 -0
- package/dist/utils/i18n.js.map +1 -0
- package/frontend/dist/assets/index-BgZVsrAO.js +202 -0
- package/frontend/dist/assets/index-BgZVsrAO.js.map +1 -0
- package/frontend/dist/assets/index-CjT98mwq.css +1 -0
- package/frontend/dist/index.html +2 -2
- package/package.json +2 -1
- package/frontend/dist/assets/index-C-F1zr8n.js +0 -197
- package/frontend/dist/assets/index-C-F1zr8n.js.map +0 -1
- package/frontend/dist/assets/index-DVMEgEIO.css +0 -1
|
@@ -4,18 +4,34 @@ const registry = new Map();
|
|
|
4
4
|
const instances = new Map();
|
|
5
5
|
export function registerService(key, entry) {
|
|
6
6
|
// Try to load override immediately during registration
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
7
|
+
// Try multiple paths and file extensions in order
|
|
8
|
+
const serviceDirs = ['src/services', 'dist/services'];
|
|
9
|
+
const fileExts = ['.ts', '.js'];
|
|
10
|
+
const overrideFileName = key + 'x';
|
|
11
|
+
for (const serviceDir of serviceDirs) {
|
|
12
|
+
for (const fileExt of fileExts) {
|
|
13
|
+
const overridePath = join(process.cwd(), serviceDir, overrideFileName + fileExt);
|
|
14
|
+
try {
|
|
15
|
+
// Use createRequire with a stable path reference
|
|
16
|
+
const require = createRequire(join(process.cwd(), 'package.json'));
|
|
17
|
+
const mod = require(overridePath);
|
|
18
|
+
const override = mod[key.charAt(0).toUpperCase() + key.slice(1) + 'x'];
|
|
19
|
+
if (typeof override === 'function') {
|
|
20
|
+
entry.override = override;
|
|
21
|
+
break; // Found override, exit both loops
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
catch (error) {
|
|
25
|
+
// Continue trying next path/extension combination
|
|
26
|
+
continue;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
// If override was found, break out of outer loop too
|
|
30
|
+
if (entry.override) {
|
|
31
|
+
break;
|
|
14
32
|
}
|
|
15
33
|
}
|
|
16
|
-
|
|
17
|
-
// Silently ignore if override doesn't exist
|
|
18
|
-
}
|
|
34
|
+
console.log(`Service registered: ${key} with entry:`, entry);
|
|
19
35
|
registry.set(key, entry);
|
|
20
36
|
}
|
|
21
37
|
export function getService(key) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/services/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAS5B,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAwB,CAAC;AACjD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAmB,CAAC;AAE7C,MAAM,UAAU,eAAe,CAAI,GAAW,EAAE,KAAiB;IAC/D,uDAAuD;IACvD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/services/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAS5B,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAwB,CAAC;AACjD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAmB,CAAC;AAE7C,MAAM,UAAU,eAAe,CAAI,GAAW,EAAE,KAAiB;IAC/D,uDAAuD;IACvD,kDAAkD;IAClD,MAAM,WAAW,GAAG,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;IACtD,MAAM,QAAQ,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAChC,MAAM,gBAAgB,GAAG,GAAG,GAAG,GAAG,CAAC;IAEnC,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,gBAAgB,GAAG,OAAO,CAAC,CAAC;YAEjF,IAAI,CAAC;gBACH,iDAAiD;gBACjD,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC;gBACnE,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;gBAClC,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;gBACvE,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE,CAAC;oBACnC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;oBAC1B,MAAM,CAAC,kCAAkC;gBAC3C,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,kDAAkD;gBAClD,SAAS;YACX,CAAC;QACH,CAAC;QAED,qDAAqD;QACrD,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM;QACR,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,uBAAuB,GAAG,cAAc,EAAE,KAAK,CAAC,CAAC;IAC7D,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,UAAU,CAAI,GAAW;IACvC,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,SAAS,CAAC,GAAG,CAAC,GAAG,CAAM,CAAC;IACjC,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAChC,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAEjF,mDAAmD;IACnD,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,WAAW,CAAC;IAEjD,MAAM,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;IAC5B,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC7B,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import i18n from 'i18next';
|
|
2
|
+
import Backend from 'i18next-fs-backend';
|
|
3
|
+
import path from 'path';
|
|
4
|
+
// Initialize i18n for backend
|
|
5
|
+
const initI18n = async () => {
|
|
6
|
+
return i18n.use(Backend).init({
|
|
7
|
+
lng: 'en', // default language
|
|
8
|
+
fallbackLng: 'en',
|
|
9
|
+
backend: {
|
|
10
|
+
// Path to translation files
|
|
11
|
+
loadPath: path.join(process.cwd(), 'locales', '{{lng}}.json'),
|
|
12
|
+
},
|
|
13
|
+
interpolation: {
|
|
14
|
+
escapeValue: false, // not needed for server side
|
|
15
|
+
},
|
|
16
|
+
// Enable debug mode for development
|
|
17
|
+
debug: false,
|
|
18
|
+
// Preload languages
|
|
19
|
+
preload: ['en', 'zh'],
|
|
20
|
+
// Use sync mode for server
|
|
21
|
+
initImmediate: false,
|
|
22
|
+
});
|
|
23
|
+
};
|
|
24
|
+
// Get translation function for a specific language
|
|
25
|
+
export const getT = (language) => {
|
|
26
|
+
if (language && language !== i18n.language) {
|
|
27
|
+
i18n.changeLanguage(language);
|
|
28
|
+
}
|
|
29
|
+
return i18n.t.bind(i18n);
|
|
30
|
+
};
|
|
31
|
+
// Initialize and export
|
|
32
|
+
export { initI18n };
|
|
33
|
+
export default i18n;
|
|
34
|
+
//# sourceMappingURL=i18n.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../src/utils/i18n.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,SAAS,CAAC;AAC3B,OAAO,OAAO,MAAM,oBAAoB,CAAC;AACzC,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,8BAA8B;AAC9B,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;IAC1B,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;QAC5B,GAAG,EAAE,IAAI,EAAE,mBAAmB;QAC9B,WAAW,EAAE,IAAI;QAEjB,OAAO,EAAE;YACP,4BAA4B;YAC5B,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,cAAc,CAAC;SAC9D;QAED,aAAa,EAAE;YACb,WAAW,EAAE,KAAK,EAAE,6BAA6B;SAClD;QAED,oCAAoC;QACpC,KAAK,EAAE,KAAK;QAEZ,oBAAoB;QACpB,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QAErB,2BAA2B;QAC3B,aAAa,EAAE,KAAK;KACrB,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,mDAAmD;AACnD,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,QAAiB,EAAE,EAAE;IACxC,IAAI,QAAQ,IAAI,QAAQ,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC3C,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC,CAAC;AAEF,wBAAwB;AACxB,OAAO,EAAE,QAAQ,EAAE,CAAC;AACpB,eAAe,IAAI,CAAC"}
|