@riktajs/core 0.2.1 ā 0.2.3
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/README.md +5 -1
- package/dist/core/application.d.ts.map +1 -1
- package/dist/core/application.js +2 -0
- package/dist/core/application.js.map +1 -1
- package/dist/core/discovery.d.ts +14 -3
- package/dist/core/discovery.d.ts.map +1 -1
- package/dist/core/discovery.js +77 -36
- package/dist/core/discovery.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -78,7 +78,11 @@ export class UserController {
|
|
|
78
78
|
}
|
|
79
79
|
|
|
80
80
|
// 4. Run it!
|
|
81
|
-
|
|
81
|
+
// autowired paths are resolved relative to your project, not node_modules!
|
|
82
|
+
const app = await Rikta.create({
|
|
83
|
+
port: 3000,
|
|
84
|
+
autowired: ['./src'] // Relative paths are resolved from YOUR project directory
|
|
85
|
+
});
|
|
82
86
|
await app.listen();
|
|
83
87
|
console.log('š Server running on http://localhost:3000');
|
|
84
88
|
```
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../../src/core/application.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAe1B,OAAO,EAAe,WAAW,EAAE,gBAAgB,EAAqB,MAAM,SAAS,CAAC;AASxF;;;;;GAKG;AACH,qBAAa,YAAY;IACvB;;;;;;;;;;;;;;OAcG;WACU,MAAM,CAAC,MAAM,GAAE,WAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../../src/core/application.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAe1B,OAAO,EAAe,WAAW,EAAE,gBAAgB,EAAqB,MAAM,SAAS,CAAC;AASxF;;;;;GAKG;AACH,qBAAa,YAAY;IACvB;;;;;;;;;;;;;;OAcG;WACU,MAAM,CAAC,MAAM,GAAE,WAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAoBzE;AAsUD,OAAO,EAAE,YAAY,IAAI,KAAK,EAAE,CAAC"}
|
package/dist/core/application.js
CHANGED
|
@@ -37,7 +37,9 @@ class RiktaFactory {
|
|
|
37
37
|
* ```
|
|
38
38
|
*/
|
|
39
39
|
static async create(config = {}) {
|
|
40
|
+
console.log('\nš Rikta Framework Starting...\n');
|
|
40
41
|
const callerDir = (0, discovery_1.getCallerDirectory)();
|
|
42
|
+
console.log(' Caller Directory:', callerDir);
|
|
41
43
|
let discoveredFiles = [];
|
|
42
44
|
// Auto-discovery: scan for controllers and services
|
|
43
45
|
if (!config.controllers) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application.js","sourceRoot":"","sources":["../../src/core/application.ts"],"names":[],"mappings":";;;;;;AAAA,4BAA0B;AAC1B,sDAAmD;AACnD,qDAAkD;AAClD,4CAAyC;AACzC,yCAAsC;AACtC,2CAAkE;AAElE,qDAAiD;AACjD,2DAA8E;AAQ9E,2CAAqF;AACrF,6CAKsB;AAEtB;;;;;GAKG;AACH,MAAa,YAAY;IACvB;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,SAAsB,EAAE;QAC1C,MAAM,SAAS,GAAG,IAAA,8BAAkB,GAAE,CAAC;QACvC,IAAI,eAAe,GAAa,EAAE,CAAC;QAEnC,oDAAoD;QACpD,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YACxB,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9C,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;YAChD,eAAe,GAAG,MAAM,IAAA,2BAAe,EAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YAC7D,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,YAAY,eAAe,CAAC,MAAM,YAAY,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAChC,OAAO,GAAG,CAAC;IACb,CAAC;CACF;
|
|
1
|
+
{"version":3,"file":"application.js","sourceRoot":"","sources":["../../src/core/application.ts"],"names":[],"mappings":";;;;;;AAAA,4BAA0B;AAC1B,sDAAmD;AACnD,qDAAkD;AAClD,4CAAyC;AACzC,yCAAsC;AACtC,2CAAkE;AAElE,qDAAiD;AACjD,2DAA8E;AAQ9E,2CAAqF;AACrF,6CAKsB;AAEtB;;;;;GAKG;AACH,MAAa,YAAY;IACvB;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,SAAsB,EAAE;QAC1C,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;QAClD,MAAM,SAAS,GAAG,IAAA,8BAAkB,GAAE,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;QAC7C,IAAI,eAAe,GAAa,EAAE,CAAC;QAEnC,oDAAoD;QACpD,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YACxB,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9C,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;YAChD,eAAe,GAAG,MAAM,IAAA,2BAAe,EAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YAC7D,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,YAAY,eAAe,CAAC,MAAM,YAAY,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAChC,OAAO,GAAG,CAAC;IACb,CAAC;CACF;AApCD,oCAoCC;AAsUwB,6BAAK;AApU9B;;GAEG;AACH,MAAM,oBAAoB;IACf,MAAM,CAAkB;IAChB,SAAS,CAAY;IACrB,MAAM,CAA4M;IAClN,MAAM,CAAS;IACf,MAAM,CAAW;IACjB,oBAAoB,GAAiE,EAAE,CAAC;IACxF,sBAAsB,GAAG,IAAI,GAAG,EAA6B,CAAC;IAC9D,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAChC,WAAW,GAAG,KAAK,CAAC;IACpB,OAAO,GAAG,EAAE,CAAC;IAErB,YAAY,MAAmB;QAC7B,IAAI,CAAC,MAAM,GAAG;YACZ,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,0BAAc,CAAC,IAAI;YACxC,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,0BAAc,CAAC,IAAI;YACxC,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,0BAAc,CAAC,MAAM;YAC9C,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,0BAAc,CAAC,MAAM;YAC9C,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;SAC1C,CAAC;QAEF,IAAI,CAAC,MAAM,GAAG,IAAA,iBAAO,EAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACtD,IAAI,CAAC,SAAS,GAAG,qBAAS,CAAC,WAAW,EAAE,CAAC;QACzC,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAE1E,+BAA+B;QAC/B,IAAI,CAAC,MAAM,GAAG,IAAI,oBAAQ,EAAE,CAAC;QAC7B,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,oBAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAEvD,iCAAiC;QACjC,IAAI,CAAC,qBAAqB,EAAE,CAAC;IAC/B,CAAC;IAED;;OAEG;IACK,qBAAqB;QAC3B,6CAA6C;QAC7C,MAAM,YAAY,GAAG,IAAI,kCAAqB,CAAC;YAC7C,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,YAAY;YACvD,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,SAAS;SAClD,CAAC,CAAC;QAEH,oCAAoC;QACpC,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,EAAE,CAAC;QACzD,KAAK,MAAM,WAAW,IAAI,aAAa,EAAE,CAAC;YACxC,MAAM,QAAQ,GAAG,IAAA,6BAAgB,EAAC,WAAW,CAAC,CAAC;YAC/C,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAoB,CAAC;YAE9E,IAAI,QAAQ,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/C,wCAAwC;gBACxC,KAAK,MAAM,aAAa,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;oBAChD,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;gBACjE,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,yCAAyC;gBACzC,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;QAED,4BAA4B;QAC5B,IAAI,CAAC,MAAM,CAAC,eAAe,CACzB,IAAA,mCAAsB,EAAC,YAAY,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAClE,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,kBAA4B,EAAE;QACvC,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;QAEtD,uBAAuB;QACvB,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;QAEpE,qCAAqC;QACrC,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;QACpC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE;YACtC,KAAK,EAAE,mBAAQ,CAAC,kBAAkB,EAAE,CAAC,MAAM;SAC5C,CAAC,CAAC;QAEH,wCAAwC;QACxC,MAAM,SAAS,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE5C,4CAA4C;QAC5C,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;QACxD,KAAK,MAAM,QAAQ,IAAI,mBAAmB,EAAE,CAAC;YAC3C,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;QAED,0CAA0C;QAC1C,KAAK,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,SAAS,EAAE,CAAC;YAC7C,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAClD,CAAC;QAED,qBAAqB;QACrB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,mBAAQ,CAAC,cAAc,EAAE,CAAC;QACzE,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QACtC,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC7C,CAAC;QACD,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;QAEpE,uCAAuC;QACvC,MAAM,IAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;QAC9C,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE;YACtC,aAAa,EAAE,IAAI,CAAC,oBAAoB,CAAC,MAAM;SAChD,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,sBAAsB;QAClC,MAAM,eAAe,GAAG,mBAAQ,CAAC,kBAAkB,EAAE,CAAC;QACtD,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAEzC,KAAK,MAAM,aAAa,IAAI,eAAe,EAAE,CAAC;YAC5C,MAAM,QAAQ,GAAiC,OAAO,CAAC,WAAW,CAChE,6BAAiB,EACjB,aAAa,CACd,CAAC;YAEF,IAAI,CAAC,QAAQ;gBAAE,SAAS;YAExB,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAE5D,CAAC;YAEF,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,OAAO,EAAE,CAAC;YAC/C,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED;;OAEG;IACK,kBAAkB;QACxB,MAAM,SAAS,GAAG,mBAAQ,CAAC,YAAY,EAAE,CAAC;QAE1C,OAAO,SAAS;aACb,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACd,MAAM;YACN,QAAQ,EAAE,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC;SAC3C,CAAC,CAAC;aACF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,MAAmB;QAC7C,MAAM,OAAO,GACX,OAAO,CAAC,WAAW,CAAC,+BAAmB,EAAE,MAAM,CAAC,CAAC;QACnD,OAAO,OAAO,EAAE,QAAQ,IAAI,CAAC,CAAC;IAChC,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,kBAAkB,CAAC,MAAmB,EAAE,QAAgB;QACpE,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QAEzB,6BAA6B;QAC7B,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAE7D,2BAA2B;QAC3B,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,gBAAgB,CAAC,EAAE,CAAC;YAC7C,MAAO,QAA2B,CAAC,cAAc,EAAE,CAAC;QACtD,CAAC;QAED,2BAA2B;QAC3B,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QAE9E,oDAAoD;QACpD,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACK,sBAAsB,CAAC,MAAmB,EAAE,QAAiB;QACnE,MAAM,QAAQ,GACZ,OAAO,CAAC,WAAW,CAAC,gCAAiB,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;QAEvD,KAAK,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,QAAQ,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAI,QAAqC,CAAC,UAAU,CAAC,CAAC;YAClE,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;gBACjC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,QAAqB;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QACpD,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,QAAQ,CAAC,QAAgB;QACrC,KAAK,MAAM,EAAE,QAAQ,EAAE,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YACrD,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;gBACrC,MAAO,QAAuD,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7E,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,OAAO,CAAC,QAAiB,EAAE,QAAgB;QACjD,OAAO,CACL,QAAQ,KAAK,IAAI;YACjB,OAAO,QAAQ,KAAK,QAAQ;YAC5B,QAAQ,IAAI,QAAQ;YACpB,OAAQ,QAAoC,CAAC,QAAQ,CAAC,KAAK,UAAU,CACtE,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM;QACV,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YACtC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YACtB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;SACvB,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,0BAA0B,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;QAExD,iCAAiC;QACjC,KAAK,MAAM,EAAE,QAAQ,EAAE,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YACrD,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,qBAAqB,CAAC,EAAE,CAAC;gBAClD,MAAO,QAAgC,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5E,CAAC;QACH,CAAC;QAED,wBAAwB;QACxB,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE;YACnC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;SACvB,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,MAAe;QACzB,0BAA0B;QAC1B,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAEnD,uCAAuC;QACvC,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC,OAAO,EAAE,CAAC;QAE1D,KAAK,MAAM,EAAE,QAAQ,EAAE,IAAI,QAAQ,EAAE,CAAC;YACpC,6BAA6B;YAC7B,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,uBAAuB,CAAC,EAAE,CAAC;gBACpD,MAAO,QAAkC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAC1E,CAAC;YAED,yBAAyB;YACzB,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,mBAAmB,CAAC,EAAE,CAAC;gBAChD,MAAO,QAA8B,CAAC,iBAAiB,EAAE,CAAC;YAC5D,CAAC;QACH,CAAC;QAED,gBAAgB;QAChB,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QAEzB,yBAAyB;QACzB,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE;YACpC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS;SACpC,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,WAAW;QACT,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,GAAG,CAAI,KAAqB;QAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;CACF"}
|
package/dist/core/discovery.d.ts
CHANGED
|
@@ -3,15 +3,20 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Only imports files that contain @Controller, @Injectable, or @Provider decorators.
|
|
5
5
|
*
|
|
6
|
-
* @param patterns - Glob patterns to search for files (default: ['./**'])
|
|
7
|
-
* @param cwd - Base directory for pattern matching
|
|
6
|
+
* @param patterns - Glob patterns or directory paths to search for files (default: ['./**'])
|
|
7
|
+
* @param cwd - Base directory for pattern matching. If not provided, it will be
|
|
8
|
+
* automatically resolved from the caller's location (useful when rikta-core
|
|
9
|
+
* is used as an external library from node_modules)
|
|
8
10
|
* @returns Promise resolving to list of imported files
|
|
9
11
|
*
|
|
10
12
|
* @example
|
|
11
13
|
* ```typescript
|
|
12
|
-
* // Scan specific directories
|
|
14
|
+
* // Scan specific directories (relative paths resolved from caller's location)
|
|
13
15
|
* await discoverModules(['./src/controllers', './src/services']);
|
|
14
16
|
*
|
|
17
|
+
* // Scan with absolute path
|
|
18
|
+
* await discoverModules(['/absolute/path/to/src']);
|
|
19
|
+
*
|
|
15
20
|
* // Scan everything (default)
|
|
16
21
|
* await discoverModules();
|
|
17
22
|
* ```
|
|
@@ -19,6 +24,12 @@
|
|
|
19
24
|
export declare function discoverModules(patterns?: string[], cwd?: string): Promise<string[]>;
|
|
20
25
|
/**
|
|
21
26
|
* Get the caller's directory (useful for relative pattern resolution)
|
|
27
|
+
*
|
|
28
|
+
* This function walks the stack trace to find the first file that is NOT
|
|
29
|
+
* part of rikta-core, making it work correctly when rikta-core is installed
|
|
30
|
+
* as an external library in node_modules.
|
|
31
|
+
*
|
|
32
|
+
* @returns The directory of the calling file, or process.cwd() if it cannot be determined
|
|
22
33
|
*/
|
|
23
34
|
export declare function getCallerDirectory(): string;
|
|
24
35
|
//# sourceMappingURL=discovery.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../src/core/discovery.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../src/core/discovery.ts"],"names":[],"mappings":"AAgFA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,eAAe,CACnC,QAAQ,GAAE,MAAM,EAAuB,EACvC,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,EAAE,CAAC,CAqEnB;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C"}
|
package/dist/core/discovery.js
CHANGED
|
@@ -52,6 +52,44 @@ const DEFAULT_IGNORE_PATTERNS = [
|
|
|
52
52
|
'**/*.spec.ts',
|
|
53
53
|
'**/*.d.ts',
|
|
54
54
|
];
|
|
55
|
+
/**
|
|
56
|
+
* Get the caller's directory from the stack trace
|
|
57
|
+
* This is used to resolve relative paths from the caller's context,
|
|
58
|
+
* not from where rikta-core is installed (e.g., node_modules)
|
|
59
|
+
*/
|
|
60
|
+
function getCallerDirectoryFromStack() {
|
|
61
|
+
const originalPrepareStackTrace = Error.prepareStackTrace;
|
|
62
|
+
try {
|
|
63
|
+
const err = new Error();
|
|
64
|
+
let callerFile;
|
|
65
|
+
Error.prepareStackTrace = (_, stack) => stack;
|
|
66
|
+
const stack = err.stack;
|
|
67
|
+
// Find the first file that's not part of rikta-core
|
|
68
|
+
for (const site of stack) {
|
|
69
|
+
const filename = site.getFileName();
|
|
70
|
+
if (filename &&
|
|
71
|
+
!filename.includes('discovery.ts') &&
|
|
72
|
+
!filename.includes('discovery.js') &&
|
|
73
|
+
!filename.includes('application.ts') &&
|
|
74
|
+
!filename.includes('application.js') &&
|
|
75
|
+
!filename.includes('rikta-core')) {
|
|
76
|
+
callerFile = filename;
|
|
77
|
+
break;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
if (callerFile) {
|
|
81
|
+
// Handle file:// URLs (ESM) and regular paths
|
|
82
|
+
const filePath = callerFile.startsWith('file://')
|
|
83
|
+
? new URL(callerFile).pathname
|
|
84
|
+
: callerFile;
|
|
85
|
+
return path_1.default.dirname(filePath);
|
|
86
|
+
}
|
|
87
|
+
return process.cwd();
|
|
88
|
+
}
|
|
89
|
+
finally {
|
|
90
|
+
Error.prepareStackTrace = originalPrepareStackTrace;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
55
93
|
/**
|
|
56
94
|
* Regex patterns to detect Rikta decorators
|
|
57
95
|
*/
|
|
@@ -77,34 +115,56 @@ async function containsRiktaDecorators(filePath) {
|
|
|
77
115
|
*
|
|
78
116
|
* Only imports files that contain @Controller, @Injectable, or @Provider decorators.
|
|
79
117
|
*
|
|
80
|
-
* @param patterns - Glob patterns to search for files (default: ['./**'])
|
|
81
|
-
* @param cwd - Base directory for pattern matching
|
|
118
|
+
* @param patterns - Glob patterns or directory paths to search for files (default: ['./**'])
|
|
119
|
+
* @param cwd - Base directory for pattern matching. If not provided, it will be
|
|
120
|
+
* automatically resolved from the caller's location (useful when rikta-core
|
|
121
|
+
* is used as an external library from node_modules)
|
|
82
122
|
* @returns Promise resolving to list of imported files
|
|
83
123
|
*
|
|
84
124
|
* @example
|
|
85
125
|
* ```typescript
|
|
86
|
-
* // Scan specific directories
|
|
126
|
+
* // Scan specific directories (relative paths resolved from caller's location)
|
|
87
127
|
* await discoverModules(['./src/controllers', './src/services']);
|
|
88
128
|
*
|
|
129
|
+
* // Scan with absolute path
|
|
130
|
+
* await discoverModules(['/absolute/path/to/src']);
|
|
131
|
+
*
|
|
89
132
|
* // Scan everything (default)
|
|
90
133
|
* await discoverModules();
|
|
91
134
|
* ```
|
|
92
135
|
*/
|
|
93
|
-
async function discoverModules(patterns = ['./**/*.{ts,js}'], cwd
|
|
136
|
+
async function discoverModules(patterns = ['./**/*.{ts,js}'], cwd) {
|
|
137
|
+
// If no cwd provided, resolve from caller's directory
|
|
138
|
+
// This is crucial when rikta-core is installed in node_modules
|
|
139
|
+
const baseDir = cwd ?? getCallerDirectoryFromStack();
|
|
140
|
+
// Resolve the base directory to absolute if needed
|
|
141
|
+
const absoluteBaseDir = path_1.default.isAbsolute(baseDir)
|
|
142
|
+
? baseDir
|
|
143
|
+
: path_1.default.resolve(process.cwd(), baseDir);
|
|
94
144
|
// Normalize patterns to include file extensions if not present
|
|
95
145
|
const normalizedPatterns = patterns.map(pattern => {
|
|
146
|
+
// Resolve the pattern if it's an absolute path
|
|
147
|
+
// For absolute paths, we need to make them relative to cwd for fast-glob
|
|
148
|
+
let normalizedPattern = pattern;
|
|
149
|
+
if (path_1.default.isAbsolute(pattern)) {
|
|
150
|
+
// Convert absolute path to relative from baseDir
|
|
151
|
+
normalizedPattern = path_1.default.relative(absoluteBaseDir, pattern);
|
|
152
|
+
if (!normalizedPattern.startsWith('.')) {
|
|
153
|
+
normalizedPattern = './' + normalizedPattern;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
96
156
|
// If pattern already has extension, use as-is
|
|
97
|
-
if (/\.\w+$/.test(
|
|
98
|
-
return
|
|
157
|
+
if (/\.\w+$/.test(normalizedPattern) || normalizedPattern.endsWith('*')) {
|
|
158
|
+
return normalizedPattern;
|
|
99
159
|
}
|
|
100
160
|
// Add file extension pattern
|
|
101
|
-
return
|
|
102
|
-
? `${
|
|
103
|
-
: `${
|
|
161
|
+
return normalizedPattern.endsWith('/')
|
|
162
|
+
? `${normalizedPattern}**/*.{ts,js}`
|
|
163
|
+
: `${normalizedPattern}/**/*.{ts,js}`;
|
|
104
164
|
});
|
|
105
165
|
// Find all matching files
|
|
106
166
|
const files = await (0, fast_glob_1.default)(normalizedPatterns, {
|
|
107
|
-
cwd,
|
|
167
|
+
cwd: absoluteBaseDir,
|
|
108
168
|
absolute: true,
|
|
109
169
|
ignore: DEFAULT_IGNORE_PATTERNS,
|
|
110
170
|
onlyFiles: true,
|
|
@@ -136,33 +196,14 @@ async function discoverModules(patterns = ['./**/*.{ts,js}'], cwd = process.cwd(
|
|
|
136
196
|
}
|
|
137
197
|
/**
|
|
138
198
|
* Get the caller's directory (useful for relative pattern resolution)
|
|
199
|
+
*
|
|
200
|
+
* This function walks the stack trace to find the first file that is NOT
|
|
201
|
+
* part of rikta-core, making it work correctly when rikta-core is installed
|
|
202
|
+
* as an external library in node_modules.
|
|
203
|
+
*
|
|
204
|
+
* @returns The directory of the calling file, or process.cwd() if it cannot be determined
|
|
139
205
|
*/
|
|
140
206
|
function getCallerDirectory() {
|
|
141
|
-
|
|
142
|
-
try {
|
|
143
|
-
const err = new Error();
|
|
144
|
-
let callerFile;
|
|
145
|
-
Error.prepareStackTrace = (_, stack) => stack;
|
|
146
|
-
const stack = err.stack;
|
|
147
|
-
// Find the first file that's not this module
|
|
148
|
-
for (const site of stack) {
|
|
149
|
-
const filename = site.getFileName();
|
|
150
|
-
if (filename && !filename.includes('discovery.ts') && !filename.includes('application.ts')) {
|
|
151
|
-
callerFile = filename;
|
|
152
|
-
break;
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
if (callerFile) {
|
|
156
|
-
// Handle file:// URLs (ESM) and regular paths
|
|
157
|
-
const filePath = callerFile.startsWith('file://')
|
|
158
|
-
? new URL(callerFile).pathname
|
|
159
|
-
: callerFile;
|
|
160
|
-
return path_1.default.dirname(filePath);
|
|
161
|
-
}
|
|
162
|
-
return process.cwd();
|
|
163
|
-
}
|
|
164
|
-
finally {
|
|
165
|
-
Error.prepareStackTrace = originalPrepareStackTrace;
|
|
166
|
-
}
|
|
207
|
+
return getCallerDirectoryFromStack();
|
|
167
208
|
}
|
|
168
209
|
//# sourceMappingURL=discovery.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../src/core/discovery.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../src/core/discovery.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED